あー…
その乱数生成器は残念ながらダメなんです…
線形合同法(以下LCG)で周期を伸ばすのには、縦につなげてしまうと周期は二つの掛け算にはならず、もっともっと小さくなってしまいます。
やってみればわかりますが、それだとよくて200~400万、種によっては数万になってしまうかと。
また、あまりよくないモアレ的なものが出てしまいます。
LCGを組み合わせて周期を伸ばすには、並列でつなぐ方法を用います。
Y=(Y+0.1)%1
X=(X+0.2)%0.99
R=(X-Y)%(0.9997)
if R=0 then R=0.9997
こんな感じで。(固定小数点の計算は適当w
これをCombined Linear Congruential Generator(CLCG)と言います。
ほぼ同じ計算量で周期はきちんと二つのLCGの掛け算になり、怪しいモアレも出にくくなります。
0そうだね プレイ済み