(python)對乙個正整數分解質因數

2021-10-02 16:13:35 字數 584 閱讀 6602

質因數(素因數或質因子):在數論裡是指能整除給定正整數的質數。除了1以外,兩個沒有其他共同質因子的正整數稱為互質。因為1沒有質因子,1與任何正整數(包括1本身)都是互質

簡而言之就是:質因數就是乙個數的約數,並且是質數。

例如:90=2* 2 * 3 *5

**如下:

x=

int(

input

("please eneter a number:"))

a=2#最小質數

while(1

):if x==a:

#質數等於a,列印結束

print

(x)break

if x>a:

if x%a==0:

#如果整除,把商作為新整數

print

(a) x=x/a

else

:#如果不整除,質數加一,重複第一步

a=a+

1

執行結果:

please eneter a number:902

335.0

Just for fun 分解乙個正整數的質因數

為什麼我要記錄這個問題,因為之前面試的時候遇到過,當時自己寫的演算法不好,所以,在此記錄一下 是基於python3寫的 人生苦短,寫演算法請用python,web的話請用php def prime n l while n 1 for i in range 2,n 1 if n i 0 n int n...

將乙個正整數分解質因數

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

009 題目 將乙個正整數分解質因數

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