質因數(素因數或質因子):在數論裡是指能整除給定正整數的質數。除了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 如...