初级编程C++题:11H1175: 分解质因数

初级编程C++题:11H1175:分解质因数

时间限制: 1 Sec 内存限制: 128 MB

题目描述

分解质因数是小学数学中常见的问题,现在给定一个正整数N,请你编程序对N分解质因数,并将分解式输出来。

初级编程C++题:11H1175:分解质因数

输入

一行,只有一个正整数N(N<=32767)

输出

只有一行,就是N分解成质因子的连乘积的式子,并且要求按因子从小到大从左到右的格式输出。

样例输入 Copy

24

样例输出Copy

24=2*2*2*3

提示

样例二:

输入:13

输出:13=13

初级编程C++题:11H1175:分解质因数

V

V

V

V

V

V

V

V

V

V

V

V

V

V

解题:

#include<iostream>
#include<cmath>
using namespace std;
void PrimeDecomposition(int k)
{
 cout<<k<<"=";
 if(k<2)
 cout<<"1"<<endl;
 else if(k==2)
 cout<<"2"<<endl;
 else
 {
 for(int i=2;i<sqrt(k);)
 {
 if(k%i==0&&k!=i)
 {
 cout<<i<<"*";
 k=k/i;
 }
 else
 i++;
 }
 cout<<k<<endl;
 }
}
int main(){
 int n;
 cin>>n;
 PrimeDecomposition(n);
 return 0;
}