7-15 素因子分解 (20 分)

给定某个正整数 N,求其素因子分解结果,即给出其因式分解表达式
输入格式:在这里插入图片描述
输入long int范围内的正整数 N。

输出格式:
按给定格式输出N的素因式分解表达式,即 N=p1 ^ k1p2 ^ k2…*pm ^ km,其中pi为素因子并要求由小到大输出,指数ki为pi的个数;当ki为1即因子pi只有一个时不输出ki。

输入样例:
1323
输出样例:
1323=3 ^ 3*7 ^ 2

这个题有.巧妙。

#include 
using namespace std;
int main() 
{
	
	long n;
	int flag=0;
	cin>>n;
	cout<1){
		for(long i=2;i<=n;i++){//考虑质数 
		int p=0,k=0;
		while(n%i==0){//将n一步步除到不能在除 
			n/=i;
			p=i;
			k++;
		}
		if(p!=0){
			if(flag==1)
			cout<<"*";			
			cout<1){
			cout<<"^"<

你可能感兴趣的:(练习&题解)