結局、サイコロの目によって次のような割り当てになります。(3)これって明らかに不公平ですよね。出たらやり直すというのが手っ取り早いやり方です。出てサイコロを何回も振り直さないといけないというリスクはありますが。乱数を作る場合は、次のような対応になります。次のようなコードを実行してみました。多く出た回数を数えるというものです。21億ぐらいじゃないかという筋の悪さは置いといて)結果は今回は次のようになりました。多いという結果でした。偏りが重要になる場面がどれだけあるかはわかりませんが。いずれにせよ、この方法で偏りのない乱数が得られるというのは勘違いということです。いう怠惰な発想もあるかと思いますが、そちらは乱数の実装によって下位ビットに偏りがあるという問題が表面化するためおすすめできません。このあたりは、良い乱数・悪い乱数というページに詳しく書かれています。使って偏りなく一様分布する整数を求めようと思ったら、ひと工夫必要になります。関数を次のように書き換えます。割り切れない場合、乱数がその端数分の範囲になったら捨ててやり直すというものです。mt19937(ry」という意見もあるでしょうが、世の中にはいろいろな大人の事情で高度っぽいライブラリや先端っぽい技術が使えなくて血の涙を流している人も多いと思います。いう人は、せめてこの方法を使えば偏りをなくすことだけはできるのでおすすめかなぁと。高度っぽいライブラリや先端っぽい技術を使えないような職場では、往々にしてこんな何千分の一の乱数の偏りなんかよりずっと大きな問題が山積していて、これだけ解決しても焼け石に水かもしれませんが。この間違いをしているページは多く見かけます。さんのCのrand()よりmt19937の方が速いことがあるという話を読んで気付きました。上で最初に挙げたページもそうですが、「ランダムの偏り」というこの記事も勘違いしていますね。「乱数生成の方法」では、「NがRAND_MAXにくらべて十分小さいことを仮定しています」とあるので、この偏りを意識されているのだと思います。微妙に出やすいものがけっこうありそうなので、それを使ったチートをやろうと思ったらできるかもしれません(難しいとは思いますが)。偏りのない方法として書いたもので剰余を使っていて、ビットの偏りによる問題がある可能性があったため修正しました。人類の黒歴史あえて言い切る。宇崎ちゃん問題についての派閥分けはてなーはお願いだから自閉症についての理解を深めてくれブラウザでマイク入力から字幕を作るツールを作った月別アーカイブはてなブログをはじめよう!takeda25さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。