素數分解是計算數學中比較常見的問題。Python作為一種高級編程語言,在處理數學問題時,給程序員提供了便利。本篇文章將介紹如何使用Python來進行素數分解。
def prime_factors(n): i = 2 factors = [] while i * i<= n: if n % i: i += 1 else: n //= i factors.append(i) if n >1: factors.append(n) return factors
以上是一個簡單的Python函數,用于對輸入的數字進行素數分解。這個函數使用了一個循環方法,即先找到最小的質數2,如果2是數字n的因子,就記錄下來,并將n除以2,否則就找下一個質數3,重復這個過程,直至找到所有的因子。
接下來,我們調用該函數進行測試:
n = 456789 factors = prime_factors(n) print(factors)
在以上代碼中,我們定義了一個變量n,用于存儲要進行素數分解的數字,然后調用我們剛剛寫好的prime_factors函數,并將得到的結果存儲在factors變量中,最后通過print函數輸出結果。
運行結果:
[3, 13, 4663]
在以上代碼運行結果中,我們可以看到,輸入數字456789被分解成了3、13、4663三個質數的乘積。
Python作為一種高級編程語言,在處理數學問題時,給程序員提供了便利。通過上述代碼,我們可以看到使用Python進行素數分解非常簡單。