iostramusing 2022-03-02 22:04 采纳率: 96.3%
浏览 171
已结题

最大质因子序列求解。

最大质因子序列
题目描述
任意输入两个正整数m,n(1<m<n≤5000),依次输出m到n之间每个数的最大质因子(包括m和n;如果某个数本身是质数,则输出这个数自身)。
输入格式
一行,包含两个正整数m和n,其间以单个空格间隔。
输出格式
一行,每个整数的最大质因子,以逗号间隔。
输入输出样列
输入样例1:复制
5 10
输出样例1:复制
5,3,7,2,3,5
【耗时限制】1000ms 【内存限制】64MB

  • 写回答

2条回答 默认 最新

  • zhengzhisheng6 2022-03-02 22:15
    关注
    #include<iostream>
    #include<cmath>
    using namespace std;
    bool judge(int x);
    int main()
    {
        int m,n;
        int i,j;
     
        cin>>m>>n;
        for(i=m; i<=n; i++) 
            for(j=i; j>=2; j--) 
                if( (i%j==0) && judge(j) )
                {
                    cout<<j;
                    if(i!=n)
                        cout<<",";
                    break;
                }
        cout<<endl;
        return 0;
    }
     
    bool judge(int x)//判断素数
    {
        int i=2;
        for(i=2; i<=sqrt(x); i++)
            if(x%i==0)
                return false;
        return true;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月11日
  • 已采纳回答 3月3日
  • 创建了问题 3月2日