将一个数n分解为若干个从小到大排列的质数的积 ,求质数因子

进行迭代

//将一个数n分解为若干个从小到大排列的质数的积

//求质数因子
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
if(n<2)return 0; //1没有质数
for(int i = 2;i*i<=n;i++)//对的, 根号n
{
while(n% i==0) //分解之后再分解
{
n=n/i; //
cout << i ;
if(n!=1)cout << " "; //
}
}
if(n!=1) cout << n; //判断最后剩下的n是否为质数
return 0;
}

 

posted @ 2020-11-27 13:40  txzing  阅读(144)  评论(0编辑  收藏  举报