数从小至大的所有因子数程序,求解该程序的Flag

求一个数从小至大的所有因子数程序,求解该程序的Flag#include iostream.hint main(){ int n,i2,flag0

求一个数从小至大的所有因子数程序,求解该程序的Flag
#include <iostream.h>

int main()

int n,i=2,flag=0;
cin>>n; 
cout<<endl<<n<<"=";

while(n>1)
{
if(n%i==0)
{
if(flag)
cout<<"*";
cout<<i;
n/=i;
flag=1;
}
else
i++;
 }
return 0;
} flag 因子
[解决办法]


#include <iostream>

using namespace std;

int main()

int n,i=2,flag=0;
cin>>n; 
cout<<endl<<n<<"=";

while(n>1)
{
if(n%i==0)
{
//flag的作用就是标记是否第一个输出的元素
//开始的时候flag = 0,当n%i==0也就是i是n的因子时,flag = 1;
//然后当flag==1也就是不是第一个因子的时候,要先输出*再输出i。。
if(flag) cout<<"*";
cout<<i;
n/=i;
flag=1;//
}
else i++;
}
return 0;
}