质因数(蓝桥杯)

题目正文

将一个正整数N(1< N< 32768)分解质因数。例如,输入90,打印出90=233*5。

输入

输入一个正整数N(1< N< 32768)

输出

输出N的质因数分解形式

样例

66
66=2311

代码

#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
    
    
int n;
cin>>n;
cout<<n<<"=";
 for(int i=2;i<=n;i++)
 {
    
    
     //cout<<n<<endl;
     while(n%i==0)
     {
    
    
       cout<<i;
       n=n/i;
       //cout<<n<<endl;
       if(n!=1)
       cout<<"*";
     }
 }
 return 0;
}

总结

我一开始是把while写成了if,就一直报错不对,后来写成while 之后就对了,但是我不知道为什么不能用if,我也测试了如果用if的话会少一个3

猜你喜欢

转载自blog.csdn.net/MarigoldLi/article/details/118032110