0
私は比較的新しいPythonです。今、素因数分解のためのより良いプログラムがたくさんあることを知っていますが、私は助けなしにコードを書こうとしていました。ここでは、コードは次のようになります。以下の素因数分解のためのPythonプログラムは動作しません。
def is_prime(n):
i =2
while i<n:
if n%i==0:
return False
i+=1
return True
def prime_factor(n):
b = n
factor=[]
i = 2
while i<b and is_prime(i):
while n%i ==0:
factor.append(i)
n/=i
continue
i+=1
return factor
print (prime_factor(28))
コードは、いくつかの数字(27、24、12、18など)に適していますが、私は障害嘘を行い値28のための[2,2]
として出力を得る28のために失敗しました? while
状態で