私はPythonを学んでいますが、練習の1つは単純な乗算ゲームを作ることです。これは正しく答えるたびに実行されます。私はゲームの仕事をしましたが、試行回数を数えることで、正しく答えるとループ/機能が終了するようにしたいと思います。私の問題は、コードの終わりに関数が再び呼び出され、試行回数が当初設定したものに戻ってしまうことです。私はあなたがループして終わりでmultiplication_game()
のお電話を囲むことができ、各ループをカウントし、試行の指定された数?:ループの数を計算するPython
def multiplication_game():
num1 = random.randrange(1,12)
num2 = random.randrange(1,12)
answer = num1 * num2
print('how much is %d times %d?' %(num1,num2))
attempt = int(input(": "))
while attempt != answer:
print("not correct")
attempt = int(input("try again: "))
if attempt == answer:
print("Correct!")
multiplication_game()
コードをフォーマットすることができます。インデントが正しくない –
あなたのコードから、再帰的に呼び出すかどうかは不明です。コードをフォーマットできますか? – nagyben
3つの可能性:グローバルカウンタ変数を追加します。関数にパラメータとして現在のターン番号を渡すか、(望ましい)再帰を別のループに変更します。 –