#23315: 我是全部算完再討論狀況


s1092923@g.ncyu.edu.tw (安)


#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int num;
    cin>>num;
    int count;
    
        for(int i=2; i<=num; i++)
        {
            count=0;
            while(num%i==0)
            {
                num/=i;
                count+=1;
            }
            if(count>1) //有次方以上
                {
                    if(num==1) //表示數已經被全部因數分解完了,所以後面不加*
                        cout<<i<<"^"<<count;
                    else
                        cout<<i<<"^"<<count<<" * ";
                }
            else if (count==1)
                {
                    if(num==1)
                        cout<<i;
                    else
                        cout<<i<<" * ";
                }
            else //其他狀況如count=0就回去迴圈繼續計算
                continue;
        }
}