プログラミング

【Python3】素因数分解するプログラムを作ってみた

本記事ではPython3で素因数分解するプログラムを作成したので、その紹介をしています。

Pythonで素因数分解するプログラム

ソースコード

def prime_factorization(num):
    factor =[]

    i=2
    while num >= i:
        if(num % i == 0):
            num /= i
            factor.append(i)
            i = 1
        i+=1
    return factor

originalNumber = 12345
factors = prime_factorization(originalNumber)

print(originalNumber,"= ",end="")
print(*factors,sep=" × ")

 

実行結果

12345 = 3 × 5 × 823

 

プログラムの概要

・設定した数値を割り切れる数を2から順番に試しながら探す。

・割り切れる数を見つけたら、割る数をその数で割った後、list型変数「factor」に追加する

・もう一度、2から順番に割り切れる数を探す。

・割る数と割られる数が等しくなったら、その数を「factor」に追加して、結果を表示する。