2013-12-19

http://anond.hatelabo.jp/20131219204623

この試行は両方が6だった場合に限りカウントされてく(iterが増える)訳で、

まりカウントされた分はすべて両方6の場合なわけで。

これが間違い。||は論理和なので(dice1 == 6 || dice2 == 6)のどちらかが真であれば真になる。

あと実行結果はhttp://ideone.com/gIGYPsのstdoutのところを見ろ。

[1] 0.1798 0.1768 0.1912 0.1786 0.1884 0.0852

[1] 0.1712 0.1588 0.1750 0.1546 0.1656 0.1748

6個並んだ数値列が二つあるだろ。これがexperiment1とexperment2のそれぞれの実行結果。

experiment1の6番目の値だけ低いから6の目の出る確率は低い。

記事への反応 -
  • http://ideone.com/gIGYPs Rで実験したら増田が正しかった。 トラバとブコメで増田を馬鹿にしてる奴は土下座しなきゃだなw

    • ごめん、R知らないからなんとなくでしか読み取れないけど、 experiment2の方は、単位毎回、 「1回サイコロを投げ、それが6だった時に限り2回目の試行を行い、それがNである確率」 という...

      • 2個のサイコロを同時に振り、どちらかが6だった時をカウントしていく。 カウントの値は以下のように増やしている。 freq[dice1] = freq[dice1] + 1 freq[dice2] = freq[dice2] + 1 freq[6] = freq[6] - 1 dice...

        • いや、そこは理解してるんだけど。。。 experiment1 = function(max) { iter = 0 freq = rep(0, 6) while(iter < max) { dice1 = rdice(1) dice2 = rdice(1) if (dice1 == 6 || dice2 == 6) { freq[dice1] = freq...

          • この試行は両方が6だった場合に限りカウントされてく(iterが増える)訳で、 つまりはカウントされた分はすべて両方6の場合なわけで。 これが間違い。||は論理和なので(dice1 == 6 || dice2 =...

    • コードにしてもらえると増田がどんだけバカかがよく分かっていいな

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん