じゃんけん3回先取のプログラムとフローチャート解説

プログラミング

じゃんけんで3回先取した方が勝ちとなるプログラムを作成する際、まずはフローチャートを設計することが重要です。本記事では、じゃんけん3回先取のプログラムの仕組みと、フローチャートを図示して分かりやすく解説します。

1. じゃんけん3回先取のルール

基本的なルールは以下の通りです。

  • プレイヤーとコンピュータがじゃんけんを行う。
  • 勝った方に1ポイント加算。
  • 先に3ポイント獲得した方が勝利。
  • 引き分けの場合はカウントなしで再試行。

2. フローチャートの作成

以下に、じゃんけん3回先取のフローチャートを示します。

じゃんけん3回先取のフローチャート

3. フローチャートの説明

フローチャートの流れは以下のようになります。

  1. プレイヤーとコンピュータの勝利回数を初期化する。
  2. じゃんけんの手(グー、チョキ、パー)を選択。
  3. 勝敗判定を行い、勝者のポイントを増やす。
  4. 3ポイントに達したかどうかを確認。
  5. 達していなければ再びじゃんけんを行う。
  6. 3回勝利したプレイヤーを勝者とし、ゲームを終了。

4. Pythonでの簡単な実装

以下に、Pythonでの基本的な実装例を示します。

import random

def judge(player, computer):
    if player == computer:
        return "draw"
    elif (player == "グー" and computer == "チョキ") or \
         (player == "チョキ" and computer == "パー") or \
         (player == "パー" and computer == "グー"):
        return "player"
    else:
        return "computer"

def janken_game():
    choices = ["グー", "チョキ", "パー"]
    player_score = 0
    computer_score = 0
    
    while player_score < 3 and computer_score < 3:
        player_choice = input("グー・チョキ・パーのいずれかを入力してください: ")
        if player_choice not in choices:
            print("無効な選択です。再入力してください。")
            continue
        
        computer_choice = random.choice(choices)
        print(f"コンピュータの選択: {computer_choice}")
        
        result = judge(player_choice, computer_choice)
        
        if result == "player":
            print("あなたの勝ち!")
            player_score += 1
        elif result == "computer":
            print("コンピュータの勝ち!")
            computer_score += 1
        else:
            print("引き分け。再試行。")
        
        print(f"現在のスコア: あなた {player_score} - {computer_score} コンピュータ")
    
    if player_score == 3:
        print("おめでとう!あなたの勝ちです。")
    else:
        print("コンピュータの勝ちです。")

janken_game()

まとめ

じゃんけん3回先取のゲームを作るには、フローチャートを考えた上で、勝敗判定とスコア管理を実装することが重要です。本記事のフローチャートとコードを活用し、自分のプログラムに応用してみてください。

コメント

タイトルとURLをコピーしました