0が多すぎるという不満がありますが、実際にカウントしたら33%ずつになったことについては、平等を参照してください。ホームチームの勝ちは、負けより多いこと、引分けは、少ないことについては、0の個数を参照してください。100円BIGとは別の観点からこのウェブページでは、ランダムの専門的な論点を示します。
乱数らしいが、実際は再現および予測が可能である場合、擬似乱数です。コンピューターが発生するにせものを真の乱数と区別するために、擬似乱数という用語が使用されます。
擬似乱数は、再現が可能であるため、暗号として利用するのに適していません。
メルセンヌ・ツイスタは、MTと呼ばれています。Python, Ruby, R, PHP, MATLAB, C++11などのプログラミング言語は、擬似乱数発生器としてMTを内蔵しています。プログラミング言語としてDもMTを用意しています。
MersenneTwisterEngine を、オリジナルの実装 MT19937 と同じパラメタでインスタンス化したもの。 一様分布した32bitの数値を、2の19937乗の周期で生成します。メモリが著しく制限されている場合でない限り (その場合は LinearCongruentialEngine を選択すべきでしょう)、お勧めの乱数生成エンジンです。 *4
擬似乱数は、周期的に同じ数列になります。実用的な擬似乱数は、周期が長い。
擬似乱数発生器(pseudorandom number generator)の初期化をおこなう必要があります。シードを設定する方法は、課題です。同じシードを設定すれば、同じ数列になります。
疑似乱数生成器 (PRNG) は、乱数に近い性質の数列を生成できる決定性アルゴリズムである。各数列は、PRNG の初期状態と状態を変化させるアルゴリズムによって決定される。大半の PRNG は初期状態 (シード状態 とも呼ばれる) を設定可能である。初期状態を設定することを「PRNG にシードを設定する」と表現する。
明示的にシードを設定しない、あるいは同じシード値を設定するなど、同一の初期状態で PRNG を呼び出している場合には、プログラムを実行し直しても同一の数列が生成される。 *5
32ビット版のメルセンヌ・ツイスタを複数回呼び出して64ビット、128ビットなどの疑似乱数として利用しても統計的に安全であるといわれています。 *6
物理的な方法と異なり、コンピューターは、高速に多数の乱数を発生します。物理的に乱数を発生するマイクロチップが開発されています。 *7 *8