>>246
剰余を取って特定範囲の乱数を生成することができるのは、元の乱数が MT 並に性質がよいときだけかと、つまり >>246 はちみつ氏のやりかたは、元の乱数が優れたものだからできる方法
MT が発明されるまでは、最悪の方法「線形合同法」でもなんとか我慢できる部分範囲の乱酔生成法しか推奨されなかった
C FAQ をみてもそれがわかりますね
http://www.kouno.jp/home/c_faq/c13.html#16
13.16:
A:ある範囲の整数からなる乱数はどうやったら生成することができるか。
Q:すぐに思い付く、
rand() % N
(これは0からN-1までの数を返そうとする)は乱数の質が低い。なぜな ら乱数発生器の多くで下位のビットは悲惨なほどランダムでない。よりよい方法は以下のようなものである。
(int)((double)rand() / ((double)RAND_MAX + 1) * N)
0からの、超初心者C++相談室
■ このスレッドは過去ログ倉庫に格納されています
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 地震 [ぐれ★]
- 【速報】緊急地震速報取り消し [夜のけいちゃん★]
- 【速報】餃子の王将社長射殺、暴力団幹部に無罪判決 [ニョキニョキ★]
- 【気象庁】緊急地震速報を取り消し [ぐれ★]
- 【MLB】大谷翔平、値千金3ラン本塁打! 両手挙げて大喜び 崖っぷちで待望のPS1号に本拠地大熱狂 116打席ぶりアーチ★2 [冬月記者★]
- 【野球】ドジャースまさかの4連敗で終戦…大谷翔平8月以来の1発も空砲 ブルワーズにナ・リーグ優勝決定Sで屈する ★2 [阿弥陀ヶ峰★]
- じしん [509448172]
- 気象庁のシステムぶっ壊れる [834239657]
- 地震
- 地震速報取り消しwwwww
- 餃子の王将社長射殺事件、無罪wwwwwwwwwwwwwwwwwwwwww [957955821]
- JAL国内線【どこかにマイル】ご搭乗便決定のお知らせ🛩高市さん! [457294144]