功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )
最后一个数后面也要有空格
代码如下:
#include<iostream>
using namespace std;
bool isprime(int n){
for(int i=2;i<n;i++){
if(n%i==0){
return false;
}
}
return true;
}
void printPrimfactor(int n)
{
if(isprime(n)){
cout<<n<<" ";
}else{
for(int i=2;i<n;i++){
if(n%i==0){
cout<<i<<" ";
printPrimfactor(n/i);
break;
}
}
}
}
int main()
{
long a;
while(cin>>a){
printPrimfactor(a);
}
return 0;
}