分解质因数

Posted aininot260

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分解质因数相关的知识,希望对你有一定的参考价值。

对于一个将要分解的数,我们从小到大枚举它可能被分解出来的每一个因子,从小到大枚举,这样就可以保证在分解出大的因子之前,所有的小的因子全部被除完,从而保证最终所有的因子一定是质数。

虽然分解质因数本身没有进行质数判断,但是还是求出了质因数。。哈哈

while(n!=1)
        {
            for(int i=2;i<=n;i++)
            {
                if(n%i==0)
                {
                    n/=i;
                    printf("%d",i);
                    if(n!=1)printf("*");
                        break;
                }
            }
        }

通过代码可以看到,我们每分解出来一个因子之后,还是从最小的2继续枚举,从而保证分解的顺利进行,2被一个一个剔出来,全部剔完了之后就该剔3了。

完整的代码如下,T组数据每组数据一个n,对n进行分解质因数。

 1 #include <cstdio>
 2 #include<iostream>
 3 using namespace std;
 4 int n;
 5 int T;
 6 int main()
 7 {
 8     cin>>T;
 9     while(T--)
10     {
11         scanf("%d",&n);
12         //printf("%d=",n);
13         while(n!=1)
14         {
15             for(int i=2;i<=n;i++)
16             {
17                 if(n%i==0)
18                 {
19                     n/=i;
20                     printf("%d",i);
21                     if(n!=1)printf("*");
22                         break;
23                 }
24             }
25         }
26         cout<<endl;
27     }
28     return 0;
29 }

 

以上是关于分解质因数的主要内容,如果未能解决你的问题,请参考以下文章

质因数分解

质因数分解

分解质因数

C语言,分解质因数

C语言,质因数分解

java 分解质因数 基础增强