次のプログラムの空欄①と②を埋めて、キャラクターのHPを回復して、回復後のHPを戻り値として返す関数 heal() を完成させてください。
回復とは、HPの値が一定の値、加算されることを言います。
引数の説明
hp : キャラクターの現在HP
maxhp : キャラクターの最大HP(どれだけ回復しても、これより大きい値にはならない数値です。)
amount : 回復する値
プログラム
# HPを回復する関数を作ろう
def heal(hp, maxhp, amount):
new_hp = hp + ①
if ② :
new_hp = maxhp
return new_hp
# 回復の処理
maxhp = 100 # 最大HPが100
hp = 30 # 現在のHPが30
hp = heal(hp,maxhp,40) # HPを40回復
print("HP =",hp) # 70
hp = heal(hp,maxhp,40) # HPを40回復
print("HP =",hp) # 100
実行結果
70
100
最終的にnew_hpを戻り値として返しているね。
HPに、回復する値(amount)を加算した結果をnew_hpに代入するのかな。
でも、maxhpの値は超えちゃダメだから、足した結果がmaxhpを超えてしまった時の処理を考える必要がありますね。
②にその条件が入るのかもね。