じゃんけん
じゃんけんを記述してみよう
じゃんけんは2人以上の参加者によって行う。
参加者は向き合い(あるいは円になり)片腕を体の前に出す。 参加者全員で呼吸を合わせ、「じゃん、けん、ぽん」の三拍子のかけ声を発し、「ぽん」の発声と同時に「手」を出す。 この「手」の組み合わせによって勝者と敗者を決定する。
手順
①勝敗のクラスを定義
②出し方のクラスを定義
③「じゃんけん」とコール
④出し手を入力(選択させる)
⑤相手の手を出力(ランダムで)
⑥勝敗を表示
⑦勝敗の合計を表示
⑧3勝したらゲーム終了
⑨勝敗を表示
※⑦以降は、場合によって変更可能
import random
# じゃんけんの手を定義
hands = ["グー", "チョキ", "パー"]
# スコアを管理する変数を初期化
player_wins = 0
computer_wins = 0
draws = 0
# プレイヤーまたはコンピュータが3勝するまでゲームを繰り返す
while player_wins < 3 and computer_wins < 3:
print("じゃん、けん、ぽん!")
# プレイヤーの手を入力
player_hand = input("あなたの手を選択してください(グー、チョキ、パー): ")
while player_hand not in hands:
player_hand = input("正しい手を選択してください(グー、チョキ、パー): ")
# コンピュータの手をランダムに選択
computer_hand = random.choice(hands)
print(f"コンピュータは{computer_hand}を出しました")
# 勝敗を決定
if player_hand == computer_hand:
result = "引き分け"
draws += 1
elif (player_hand == "グー" and computer_hand == "チョキ") or \
(player_hand == "チョキ" and computer_hand == "パー") or \
(player_hand == "パー" and computer_hand == "グー"):
result = "勝ち"
player_wins += 1
else:
result = "負け"
computer_wins += 1
# 結果を表示
print(f"結果: {result}")
print(f"プレイヤーの勝ち: {player_wins}, コンピュータの勝ち: {computer_wins}, 引き分け: {draws}")
# ゲーム終了メッセージ
print("ゲーム終了")
print(f"最終結果 - プレイヤーの勝ち: {player_wins}, コンピュータの勝ち: {computer_wins}, 引き分け: {draws}")