← クエスト一覧

クエスト69:じゃんけん判定ゲーム!

スライド 1 / 5
コーデ
💻 コード例
実行結果
← クエスト一覧
🐍 Python / Quest 69 / 85

クエスト69:じゃんけん判定ゲーム!

応用 +10 XP
🏠
今回の課題
janken('グー', 'チョキ') が「あなたの勝ち!」、janken('チョキ', 'チョキ') が「あいこ」を返すように、じゃんけん判定を完成させよう。
📖 解説を見る
🏆 総合チャレンジ!じゃんけん判定を作ろう!

これまで学んだ辞書・関数・条件分岐を組み合わせます。

✏️ じゃんけんのルール:
・グー → チョキに勝つ
・チョキ → パーに勝つ
・パー → グーに勝つ
・同じ手なら → あいこ

✏️ 辞書で「何に勝つか」を表そう:
wins = {'グー': 'チョキ', 'チョキ': 'パー', 'パー': 'グー'}
こうすると wins[a] == b なら「a が b に勝った」と判定できます。

📋 作るもの:
・関数名は janken、引数は a(あなたの手)と b(相手の手)
・返す文字列は次の3つのどれか。表示はしないで return で返すこと
 'あいこ' / 'あなたの勝ち!' / 'あなたの負け...'
・上のルール表(辞書)を関数の中で用意して使おう

💡 どこで使う?

「たくさんの if を、辞書(ルール表)に置きかえる」という設計の練習です。勝敗表・料金表・状態の遷移などをデータとして辞書に持たせると、分岐がスッキリして、ルールの追加・変更も表を直すだけで済みます。

⚠️ ポイント:
・まず「同じ手か?」(あいこ)を判定する
wins[a] == b なら勝ち、それ以外は負け
ヒントを見る
まず「2つの手が同じか?」を先に判定しよう。そのあと、ルール表の辞書を使って勝ちかどうかを調べ、どちらでもなければ負け。返す文字列は説明の3つをそのまま使ってね。
期待する出力
あなたの勝ち!
あなたの勝ち!
あいこ
📄 見本
「答えを見る」を押すと、お手本のコードが出ます。クリックでコピーできます。
💻 コードエディタ
実行すると結果がここに表示されます
正解!見本と同じになりました。
次へ →
🏠 ホームへ

れんしゅうもんだい

☑ 0 / 3 正解 レッスンに戻る

全問正解でクエストクリア!

未挑戦

問題 1: janken('チョキ', 'グー')の結果を表示しよう!(「あなたの負け...」)

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
あなたの負け...
未挑戦

問題 2: 3回じゃんけんして勝った回数を数えて「あなたの勝ち: 2回」のように表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
あなたの勝ち: 1回
未挑戦

問題 3: 全組み合わせのじゃんけん結果を表示しよう!(グー vs グー、グー vs チョキ...全9通り)

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
グー vs グー: あいこ グー vs チョキ: あなたの勝ち! グー vs パー: あなたの負け... チョキ vs グー: あなたの負け... チョキ vs チョキ: あいこ チョキ vs パー: あなたの勝ち! パー vs グー: あなたの勝ち! パー vs チョキ: あなたの負け... パー vs パー: あいこ
コピーしました!