#include <iostream>
using namespace std;
bool isprime(int n)//试除法
{
int i;
for(i=2;i<=n/i;i++)
{
if(n%i==0)
return false;
}
return true;
}
void deprime(int n)//分解质因数
{
int i,a,b;
for(i=2;i<=n/i;i++)
{
a=b=0;
while(n%i==0)//i是其质因数
{
a=i;
n/=i;
b++;
}
if(b>0)
cout<<a<<ends<<b<<endl;
}
if(n>1)
cout<<n<<ends<<1<<endl;
}
int main()
{
int m;
cin>>m;
if(isprime(m))
cout<<"yes"<<endl;
else
deprime(m);
return 0;
}
质数的判断及分解质因数
最新推荐文章于 2024-11-17 21:01:01 发布