编写一个函数:求一个给定数的所有因子。如:73=2*2*2*3*3

是C++语言的,
2024-12-21 17:59:33
推荐回答(1个)
回答1:

稍作修改就可以了,如下:

#include
using namespace std;
#include
int f(int n)
{//判断是否是素数,是则返回1,否则返回0
if(n%2==0)return 2;
int i=3;
while(i<=sqrt(n))
{
if (n%i==0)return i;
i+=2;
}
return 1;
}
void fun(int n)
{
cout< while(n!=2&&f(n)!=1)
{
cout< n/=f(n);
}
cout<}
void main()
{
int n;
cout<<"input n :";
cin>>n;
if(n<2)cout<<"error!\n";
else fun(n);
}