質因數分解

2022-07-12 19:39:09 字數 1256 閱讀 5139

分解素因子(數論)

description

假設x是乙個正整數,它的值不超過65535( 1< x <=65535 )請編寫乙個程式,將x分解為若干個素數的乘積。

input

輸入的第一行含乙個正整數k (1 <= k <= 65535 )表示測試例的個數,後面緊接著k行,每行對應乙個測試例,包含乙個正整數x

output

每個測試例對應一行輸出,輸出x的素數乘積表示式,式中的素數從小到大排列,兩個素數之間用「*」表示乘法。

sample input

2        11 9828

sample output

11       2*2*3*3*3*7*13

解:

#includeusing

namespace

std;

#define m 10000

intans[m],p[m];

bool isprime(int n)//

判斷是否為素數

intmain()

intt;

//freopen("d:\\1.txt","r",stdin);

cin>>t;

while(t--)

}if(n==1)break

; }

if(n>1

) ans[k++]=n;

for(i=0;i1;i++)//

輸出結果

printf("

%d*"

,ans[i]);

printf(

"%d\n

",ans[i]);

}return0;

}

質因數分解

題目16 將乙個正整數分解質因數。例如 輸入90,列印出90 2 3 3 5。程式分析 對n進行分解質因數,應先找到乙個最小的質數k,然後按下述步驟完 成 1 如果這個質數恰等於n,則說明分解質因數的過程已經結束,列印出即可。2 如果n k,但n能被k整除,則應列印出k的值,並用n除以k的商,作為新...

質因數分解

短除法 求乙個數分解質因數,要從最小的質數除起,一直除到結果為質數為止。分解質因數的算式的叫短除法 和除法的性質差不多,還可以用來求多個個數的公因式 求 最大公因數的一種方法,也可用來求 最小公倍數。求幾個數最大公因數 的方法,開始時用觀察比較的方法,即 先把每個數的因數找出來,然後再找出公因數,最...

質因數分解

講乙個數分解為幾個質數相乘的結果 int a maxn 用來存質因數 int b maxn 用來存質因數的個數 int main if n 1 不能忘記這一步操作 輸出 第1種寫法 a a a b b b b c c printf 第一種寫法 for int i 1 i tot i else pri...