把一个合数分解成若干个质因数乘积的形式
把一个合数分解成若干个质因数乘积的形式,即求质因数的
过程叫做分解质因数。分解质因数(也称分解素因数)只针对合数。
输入一个正整数n,将n分解成质因数乘积的形式。
输入样例:
36
输出样例:
36=223*3
分析:
将任意的n分解为质因数的乘积,要从最小的质数开始、那么,我们就不妨从2开始试除,能整除,就输出2,再对商继续试除,直到不再含有因子2;然后用下一个质数反复试除,…,再用下一个质数试除,一直到商为1,停止操作。
这里,质因数的递增,是一层循环,每一个质因数的反复试除,又是一层循环。因此,本题使用两层循环来解决。
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
int n,i=2;
cin>>n;
cout<<n<<"=";
do{
while(n%i==0)
{
cout<<i;
n=n/i;
if(n!=1) cout<<"*";
}
i++;
}while(n!=1);
}