← 作品一覧

IMPLEMENTATION NOTES / C++

DiceGame

C++の基礎文法(入出力、乱数、条件分岐)を学ぶためのシンプルなサイコロゲーム。

C++

IMPLEMENTATION / EQUATIONS & SOURCE

入力から出力まで、コードで追う。

各節は「何を計算するか → 数式 → 実際のコード」の順に読めます。コードは動作する実装からの抜粋で、単独実行用ではありません。省略した周辺処理は参照元で確認できます。

01 / 乱数を出目に変え、合計で勝敗を決める

時刻をseedにしてrand()を初期化し、剰余で1〜6の整数を2つ作ります。合計が7より大きければ勝ちです。名前はgetlineで受け取り、結果メッセージに挿入します。

計算式
die = (rand() mod 6) + 1
total = die₁ + die₂
win ⇔ total > 7
Dice.cpp : 14COMMIT 5f39462
    int die1 = std::rand() % 6 + 1;
    int die2 = std::rand() % 6 + 1;
    int total = die1 + die2;
    std::cout << "Die 1: " << die1 << "\n";
    std::cout << "Die 2: " << die2 << "\n";
    std::cout << "Total value: " << total << "\n\n";
    if (total > 7) {
        std::cout << name << " won!\n";
    } else {
        std::cout << name << " lost!\n";
    }
該当箇所をGitHubで読む ↗

SOURCE / SCOPE

実装の読み方。

各コード抜粋はリンク先の固定コミットから取得しています。数式は該当処理を説明するための表記です。性能や品質の数値は、掲載した計算例を除き新しい実測を行っていません。ビルド手順と依存環境は各リポジトリを参照してください。

リポジトリへ ↗