前提・実現したいこと
高校生です。
情報科学の宿題。
Bit ArrowのPythonにてゲーム制作。
1から3までの数字をプレイヤーとコンピュータ(ランダム)が交互に選び、先に20に達した方の勝ち、というゲームを作りたい。
発生している問題・エラーメッセージ
よく分からない。 else: print("ありえん!") のところにエラーが出る。 他の人に聞いたら、自分の環境では動くと言われる。
該当のソースコード
Python
1import random 2 3x1 = 0 4x2 = 0 5a = "先攻" 6 7print("順に1から3の数字を選び足していき、先に20以上の数値に達したプレイヤーの勝ちです。") 8 9k = input("「先攻」か「後攻」か選んでください。") 10 11if a == k: 12 print("あなたが先攻です。") 13 14 for i in range(20): 15 jibun1 = int(input("1から3の数字を選んでください。")) 16 x1 = x2 + jibun1 17 print("current number", x1) 18 aite1 = random.randint(1, 3) 19 x2 = x1 + aite1 20 print("current number", x2) 21 if x1 >= 20 or x2 >= 20: 22 break 23 if x1 >= 20: 24 print("あなたの勝ちです。") 25 elif x2 >= 20: 26 print("コンピュータの勝ちです。") 27 else : 28 print("ありえん!") 29 30elif i == "後攻": 31 print("あなたが後攻です。") 32else: 33 print("漢字で「先攻」か「後攻」と打ち込んでください。鍵かっこは不要です。") 34 35(下の方はまだ制作途中なので無視して、今回は先攻の時のみを教えてください。)
試したこと
elifをelseにしてしまったり、日本語を置換したり色々試したが、
毎回よく分からないところに、エラーを表すびっくりマークが表示される。
補足情報(FW/ツールのバージョンなど)
Bit Arrowの環境。
あなたの回答
tips
プレビュー