お祭り大好きな虚蝉(うつせみ)です。

ネタ元
Do While について
何回コインを投げれば連続10回表が出るんだろう
(他にもエントリーがあった気がしますが…。)

んで、C#で作ってみましたが…回数が多いんですよねぇ。
なんかミスしてる気がしますorz

(コードに自動的に色をつけてくれるのがありましたよね?どこでしたっけ><;)

・普通に虚蝉(うつせみ)が思いついたコード
static void Main(string[] args) {
    int countData = 0;  //現在のカウント
    int matchData = 0;  //マッチ回数
    Random coin = new Random();

    //while (matchData <= 10) { …消したつもりでまた入ってたw
    while (matchData < 10) {
        countData++;
        if (coin.Next(2) == 0) {
            matchData++;
        }
        else {
            matchData = 0;
        }
    }

    Console.WriteLine(countData.ToString("###,###") + "回で10回完了");
}

・ツッコミをもらっての修正コード(ベルヌイ分布)
static void Main(string[] args) {
    int countData = 0;  //現在のカウント
    int matchData = 0;  //マッチ回数
    Random coin = new Random();

    while (matchData < 10) {
        countData++;
        if (coin.Next(1000) < 500) {
            matchData++;
        }
        else {
            matchData = 0;
        }
    }

    Console.WriteLine(countData.ToString("###,###") + "回で10回完了");
}

ツッコミ大募集中です。