最大质因子序列-函数

题目描述

任意输入两个正整数m,n(1<m<n≤5000),依次输出m到n之间每个数的最大质因子(包括m和n;如果某个数本身是质数,则输出这个数自身)。

输入格式

一行,包含两个正整数 m 和  n ,其间以单个空格间隔。

输出格式

一行,每个整数的最大质因子,以逗号间隔。

输入样例 

5 10

输出样例 

5,3,7,2,3,5
复制代码
#include<iostream>
using namespace std;

bool isPrime(int x){
    for(int i=2; i*i<=x; i++){
        if(x%i==0) 
            return 0;
    }
    return 1;
}

int main(){
    int m, n;
    cin>>m>>n;
    for(int i=m; i<=n; i++){
        if(isPrime(i)) cout<<i;
        else{
            int maxnum=2;
            for(int j=2; j<=i/2; j++){
                if(i%j==0 && isPrime(j)){
                    maxnum=max(maxnum,j);
                }
            }
            cout<<maxnum;
        }
        if(i<n) cout<<",";
    }
    return 0;
}
复制代码

 

 
posted @   Hi,小董先生  阅读(84)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示