分解质因数

简介: 分解质因数

问题描述

  求出区间[a,b]中所有整数的质因数分解。

输入格式

  输入两个整数a,b。

输出格式

  每行输出一个数的分解,形如k=a1*a2*a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例)

样例输入

3 10

样例输出

3=3

4=2*2

5=5

6=2*3

7=7

8=2*2*2

9=3*3

10=2*5

提示

  先筛出所有素数,然后再分解。

数据规模和约定

  2<=a<=b<=10000

对于输出* ;

要注意最后一次没有,仔细观察可以看出最后一次可以确定t/j=1,所以只要t/j!=1,就要输出

#include <iostream>
using namespace std;
int isPrime(int n){
    if(n==1||n==2){
        return 1;
    }
    for(int i=2;i<n;i++)
    {
        if(n%i==0)
        {
//            cout<<n<<"是和数";
            return 0;
        }
    }
    return 1;
}
int main()
{
    int a,b,k;
    cin>>a>>b;
    for(int i=a;i<=b;i++)
    {
        if(isPrime(i)==1){
            cout<<i<<"="<<i<<endl;
            continue;
        }
        else {
            int t=i;
            cout<<t<<"=";
//            while (isPrime(t) == 0) {
                for (int j = 2; j <=t; j++) {
                    if(t%j==0){
                        cout<<j;
                        t=t/j;
                        if(t!=1){
                            cout<<"*";
                        }
                        j=1;//恢复j的值为2
                        continue;
                    }
//                }
            }
        }
        cout<<endl;
    }
}


相关文章
|
9月前
|
C++
筛质数、分解质因数和快速幂的应用
筛质数、分解质因数和快速幂的应用
52 0
|
3月前
将一个正整数分解质因数
将一个正整数分解质因数。
26 2
|
2月前
9.回文数
9.回文数
|
3月前
|
机器学习/深度学习
完全平方数
完全平方数.。
39 0
|
3月前
|
人工智能 Java C++
分解质因数
分解质因数
29 1
|
3月前
回文数
【1月更文挑战第20天】回文数。
19 0
|
3月前
|
C++
有效的完全平方数(C++)
有效的完全平方数(C++)
42 0
|
8月前
分解质因数答疑
为什么n % i == 0就是质数 因为在枚举到i之前已经把n中2到i-1的质因子除干净了,此时n中不含2到i-1的质因子,由于n为i的倍数,所以i中也不包含2到i-1的质因子。如果i可以整除前面的i - 1中的数那么i = x * (i - 1),n = x2 * (x * (i - 1)); 矛盾了 为什么只需要枚举到根号N
50 2