将n得质因数从大到小输出 以及出现次数
void divide(int n)
{
for(int i=2;i<=n/i;i++)
{
int sum=0;
if(n%i==0)
{
while(n%i==0)
{
n/=i;
sum++;
}
cout<<i<<" "<<sum<<endl;
}
}
if(n>1) cout<<n<<" "<<1<<endl;//处理大于根号n的质因子
puts("");
}
输出n中较大的质因数
for(int i=2;;i++)
{
if(n%i==0) cout<<n/i; break;
}
1 算数基本定理
可知合数一定可以分解成唯一一组质数得乘积