乱数生成ツール(ランダム数字)

最小値と最大値(例:1〜100、0〜100)と個数を決めるだけで乱数を生成します。「重複なし」にすると、抽選箱からくじを引くように同じ数字は一度しか出ません。

準備完了です。「乱数を生成」を押すか、プリセットを選んでください。

1〜1,000個
入力内容はこのブラウザーにのみ保存されます。

結果

範囲内の数字の数
100
特定の数字が出る確率
1回の抽選あたり1%(100分の1)

計算方法

最小値から最大値まで(両端を含む)のすべての整数が同じ確率で出ます。1〜100なら候補は100個で、どの数字も1%。0〜100なら101個です。乱数はブラウザーの暗号学的に安全な乱数生成器crypto.getRandomValues()から得ています。範囲に合わせるときに偏りの原因になる値は捨てて引き直すため、特定の数字が出やすくなることはありません。

重複あり・重複なしの違い

重複なしのときはフロイドのアルゴリズムを使います。1〜10億のような大きな範囲でも、すべての数字をメモリーに並べることなく、どの組み合わせも完全に等しい確率で選びます。その後、フィッシャー–イェーツ法で順番をシャッフルします。

例:1〜100から重複なしで5個

最小値に1、最大値に100、個数に5を入れて「重複なし」をオンにします。ある数字が5個の中に入る確率は5%(100分の5)です。特定の5個の組み合わせになる確率は、100個から5個を選ぶ組み合わせの数から75,287,520分の1。どちらの値も入力欄のすぐ下に表示されます。

重複ありにすると、同じ数字が2回出ることは意外と多く起こります。1〜100から10個引くと、少なくとも1組が重なる確率は37.2%です(1 − 100×99×…×91 ÷ 10010)。ロトの数字を戻さずに抽選するのはこのためで、プリセットは自動で重複なしになります。

こんなときは

ロトのプリセットと本当の確率

各プリセットは、日本の数字選択式宝くじ(ロト)の本数字を選びます。N個の数字から異なるk個を選び、順番を問わない場合の組み合わせの数は「N個からk個を選ぶ組み合わせ(ₙCₖ)」で、推測ではなく正確に計算できます。

くじ申込数字ボーナス数字組み合わせの数(1等の確率)
ロト71〜37から7個2個(抽せんのみ)10,295,472
ロト61〜43から6個1個(抽せんのみ)6,096,454
ミニロト1〜31から5個1個(抽せんのみ)169,911

つまり1等(本数字がすべて一致)の確率は、ロト7が10,295,472分の1、ロト6が6,096,454分の1、ミニロトが169,911分の1です。ボーナス数字は2等などの判定に使われるもので、抽せんで決まり、申込者が選ぶものではありません。そのためプリセットは本数字だけを選びます。

ランダムに選んでも、当せん確率は自分で考えた数字とまったく同じです。ルールや販売方法は変わることがあるため、購入前に宝くじ公式サイトで最新の内容を確認してください。

疑似乱数ではない暗号学的な乱数

簡単な乱数生成器の多くはMath.random()を使っています。これは計算で数列を作る疑似乱数で、内部状態がわかれば予測でき、暗号用途には向きません。このツールはcrypto.getRandomValues()を使います。OSがハードウェアのノイズなどの実際のエントロピー源から種を得る、暗号学的に安全な乱数生成器(CSPRNG)です。1回ごとの抽選は前の結果と独立しているので、重複ありで同じ数字が続けて出てもエラーではなく、独立していることの表れです。

よくある質問

本当の乱数ですか?疑似乱数ですか?

暗号学的に安全な乱数です。多くのツールが使う単純な疑似乱数(Math.random())ではなく、Web Crypto API(CSPRNG)から値を得ています。ゲーム、抽選、たいていの用途には十分です。暗号鍵の生成など特に高い安全性が必要な場合は、専用の暗号ライブラリーを使ってください。

1〜100や0〜100のランダムな数字を出すには?

1〜100なら「1〜100」のプリセットを押します。0〜100なら最小値に0、最大値に100を入れます。この場合0も含まれ、候補は101個になります。

ロト6・ロト7・ミニロトの数字をランダムに選ぶには?

該当するプリセットを押すと、範囲、個数、重複なし、並べ替えが設定され、本数字がすぐに選ばれます。ボーナス数字は抽せんで決まるため、選ぶ必要はありません。

ランダムな4桁の数字を作るには?

最小値に1000、最大値に9999を入れると、先頭が0でない4桁の数字が出ます。暗証番号のように0から始まる数字も含めたいときは0〜9999にして、足りない桁の前に0を付けて読みます。

マイナスの数も使えますか?

はい、たとえば−10〜10のように指定できます。±1,000兆までの整数を使えます。

重複ありで同じ数字が2回出るのはなぜですか?

サイコロを続けて振るのと同じく、1回ごとの抽選が独立しているからです。同じ数字が2回出るのは不具合ではなく、回数を重ねれば当然起こります。同じ数字を1回だけにしたいときは「重複なし」をオンにしてください。

乱数の生成方法は?どういう仕組みですか?

乱数源から生の値を取り出し、指定した範囲に均等に割り当てます。ここではOSがハードウェアのノイズなどから種を得る、ブラウザーの暗号学的な乱数生成器が乱数源です。特定の数字を有利にしてしまう生の値は捨てて引き直すので、最小値から最大値までどの数字も確率はまったく同じです。

Excelで乱数を生成するには?

1〜100の整数なら=RANDBETWEEN(1,100)、0以上1未満の小数なら=RAND()を使います。どちらもシートを変更するたびに再計算されます。重複なしで複数の乱数を出す単独の関数はないため、その場合はこのツールのほうが手軽です。

設定を共有できますか?

はい。範囲、個数、オプションは自動でアドレスバーに保存されます。そのリンクを開いた人には同じ設定が表示され、数字は毎回新しく抽選されます。

出典・根拠

更新日:

あなたのサイトに埋め込む

無料・登録不要:コードをコピーして、ページ(HTMLブロックなど)に貼り付けてください。サイズやリンクは自由に変更できます。

プレビューを開く

関連ツール