//求一个整数的所有因子~~
#include <iostream>
using namespace std;
//判断一个数是不是质数
int isPrime(int a)
{
int i;
for(i=2; i<=a-1; ++i)
{
if(a % i == 0)
{
return 0;
}
}
return 1;
}
//求因子
void PrimeFactor(int n)
{
int i;
//如果是质数
if(isPrime(n))
{
cout << n << endl;
}
else
{
for(i=2; i <= n-1 ; ++i)
{
if(n%i == 0)
{
cout << i << endl;//第一个因子一定是质数
if(isPrime(n/i))
{
cout << n/i << endl;
break;
}
else
{
//递归调用
PrimeFactor(n/i);
}
break;
}
}
}
}
void main()
{
int n;
cout << "输入一个整数:"<<endl;
cin >> n;
PrimeFactor(n);
}
输出一个整数的所有因子
最新推荐文章于 2024-02-21 23:33:32 发布