Collatz推測で1に戻るまでのステップ数を測定するコードを作成しました。ここに私のコードは、私が最終2つの印刷は、代わりに311と311を印刷するためのコマンド、彼らは私が間違っているどのようなコードで表示するのは簡単だったと思います311と622を印刷する期待新しい再帰ごとにCollatzカウンタをリセットする
counter = 0
def collatz(n):
global counter
counter += 1
if n <= 0 :
return "Invalid Number"
elif n == 1 :
return counter
elif n % 2 == 1 :
n = 3*n + 1
return collatz(n)
elif n % 2 == 0 :
n = n/2
return collatz(n)
print(collatz(9921615699))
print(collatz(9921615699))
です。どうすれば修正できますか?コマンドが完了するたびにリセットされ、関数が実行されているときはリセットされません。
それをやりました。ありがとう!早くAnsとしてマークしよう –