C LANGUAGE TECHNOLOGY

【C言語】じゃんけんゲーム【相手が1人と2人の場合のコードを解説】

悩んでいる人

C言語でじゃんけんゲームを教えて!

こういった悩みにお答えします.

本記事の信頼性

  • リアルタイムシステムの研究歴12年.
  • 東大教員の時に,英語でOSの授業.
  • 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校コンピュータサイエンス学部2021年の世界大学学術ランキングで20位)で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発
  • プログラミング歴15年以上,習得している言語: C/C++Solidity/Vyper,Java,Python,Ruby,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM).
  • 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」GitHubにオープンソースとして公開

こういった私から学べます.

本記事は,乱数を理解していることを前提とします.

C言語 乱数生成
【C言語】rand関数と自作関数で乱数の生成【モンテカルロ法で円周率の計算】

こういった悩みにお答えします. こういった私から学べます. 目次1 乱数2 一様乱数と一様分布3 rand関数による乱数の生成3.1 rand関数による乱数の生成コード3.2 rand/srand関数 ...

続きを見る

【C言語】じゃんけんゲーム

C言語でじゃんけんゲームを作成します.

具体的には,じゃんけんゲームの相手が1人と2人のコードをそれぞれ解説します.

相手が1人の場合のじゃんけんゲーム

相手が1人の場合のじゃんけんゲームのコードは以下になります.

コードの重要なポイントは以下になります.

  • 33~38行目:最初に1(じゃんけんを開始)か0(じゃんけんを終了)を入力
  • 42~46行目:あなたの手として0(グー),1(チョキ),2(パー)を入力
  • 50行目:相手の手が0(グー),1(チョキ),2(パー)でランダムに選択
  • 54~64行目:じゃんけんの結果(あいこ,勝ち,負け)を判定
  • 最初に戻る

実行結果の例は以下になります.

相手が2人の場合のじゃんけんゲーム

相手が2人の場合のじゃんけんゲームのコードは以下になります.

相手が1人の場合との主な違いは以下になります.

  • 59行目:相手が2人なのでRANDOMマクロを2回呼び出し
  • 56,62行目:あなたと相手2人の手(グーを0,チョキを1,パーを2)の合計sumを計算
  • 65~95行目:sumの値をプレイヤー数NR_PLAYERSで割った余りを利用して勝者を判定
    • 余りが0の場合:あいこ
    • 余りが1の場合:2人の勝者を判定
    • 余りが2の場合:1人の勝者を判定

実行結果の例は以下になります.

まとめ

C言語でじゃんけんゲームを紹介しました.

具体的には,相手が1人と2人の場合のコードを解説しました.

チャレンジしたいあなたは,相手が3人以上の場合のコードを作成してみましょう!

C言語でテトリスやブロック崩しを作成したいあなたはこちらからどうぞ.

C言語 ncurses
【C言語】ncursesの使い方【ゲーム,テトリス,ブロック崩し】

こういった悩みにお答えします. こういった私から学べます. 目次1 【C言語】ncurses2 ncursesでよく利用する関数2.1 initscr/endwin関数2.2 printw関数2.3 ...

続きを見る

C言語を独学で習得することは難しいです.

私にC言語の無料相談をしたいあなたは,公式LINE「ChishiroのC言語」の友だち追加をお願い致します.

私のキャパシティもあり,一定数に達したら終了しますので,今すぐ追加しましょう!

友だち追加

独学が難しいあなたは,元東大教員がおすすめするC言語を学べるオンラインプログラミングスクール5社で自分に合うスクールを見つけましょう.後悔はさせません!

-C LANGUAGE, TECHNOLOGY
-, , , ,