题目:
将某个正整数分解质因式,并输出分解结果。
代码:
1、递归
2、非递归
#include <iostream>
using namespace std;
// recursive
void prim1(int m,int n)
{
if(m>n){
while(m%n!=0) n++;
m=m/n;
prim1(m,n);
cout<<n<<" ";
}
}
// non-recursive
void prim2(int m,int n)
{
while(m>n){
while(m%n!=0) n++;
m=m/n;
cout<<n<<" ";
}
}
int main()
{
int n=435234;
prim1(n,2);
cout<<endl;
prim2(n,2);
cout<<endl;
return 0;
}
运行结果: