前提
ここに質問の内容を詳しく書いてください。
・勇者が,ショッカー,ジコチュー,ラスボスの順に現れる敵を順番に倒していく.
・勇者,ショッカー,ジコチュー,ラスボスは,最初,それぞれ 50, 10, 20, 30 のライフを有する.
・プログラム内で乱数により整数を生成し,偶数か奇数かを判定する.同時に,プレイヤーに,1又は2をキー
ボード入力させる.プログラムとプレイヤーの双方が同時に奇数,または同時に偶数の場合,勇者が敵を”パン
チ”し,勇者のライフは 10 増え,対戦相手のライフは 10減る.双方が奇数と偶数に分かれた場合は,敵が勇者
を”パンチ”し,勇者のライフは 10 減り,対戦相手のライフは 10 増える.
・対戦相手のライフが 0 以下になったら,次の対戦相手が現れる.
・勇者のライフが 0 以下になるか,ラスボスが倒された時点でゲームは終了
import random
yusha_life=50
enemy_lives=[10,20,30]
enemy_names=['ショッカー','ジコチュー','ラスボス']
i=0
while i<3 and yusha_life>0:
print('勇者は{}と戦います'.format(enemy_names[i]))
while yusha_life>0 and enemy_lives[i]>0:
m=random.randint(1,10)
print("乱数",m)
x=int(input("キーボードか1を2を入力してください")) if (x==1 and m%2==1) or (x==2 and m%2==0): yusha_life+=10 enemy_lives[i]-=10 else: enemy_lives[i]+=10 yusha_life-=10 print('勇者のライフ',yusha_life,"敵のライフ",enemy_lives[i])
if yusha_life==0:
print('勇者は倒されました')
if enemy_lives[i]==0:
print('{}は倒された'.format(enemy_names[i]))
i+=1
なぜwhileを2つ使わないといけないんですか?
あなたの回答
tips
プレビュー