ブログ

読んで思い出す。忘れるために書く

Ruby でじゃんけんゲーム

f:id:innocent-zero:20191020033911p:plain
じゃんけんゲームの動作イメージ

Qiita の記事「Rubyでじゃんけんアプリを作ってみた - Qiita」を見掛けたので 自分でも書いてみた

書いたコード

出す手の種類が 3つと限られているので その勝敗パターンを愚直に網羅した

勝敗パターンテーブルを参照して じっさいのゲーム実行時の勝敗判定に利用している

gist.github.com

別解: 法則性を味方につける

勝敗パターンを網羅してみると見えてくることがあって、じつは出す手を数字に置き換えれば その値の計算で勝敗判定が可能になったりする... : じゃんけん勝敗判定アルゴリズムの思い出 | えすたくぶろぐ

内容としては:

  1. 手を「グー: 0」「チョキ: 1」「パー: 2」に置き換える
  2. (a - b + 3).modulo(3) に当てはめる
  3. その計算結果として; 「勝ち」は 2, 「負け」は 1, 「引き分け」は 0 になる

というもの

Links