乱数生成
範囲も個数も自由、分布は一様。両端を含みます。
下限と上限を決めて生成するだけです。結果は一様で、範囲内の整数は両端を含めてすべて同じ確率になります。最大値を 1 つ手前で止めてしまう生成器が多いなか、ここはその間違いをしません。
複数必要なときは個数を指定します。重複なしを有効にすると非復元抽出になり、抽選や座席割り当てのように、同じ番号が 2 回出たら不具合になる場面に向きます。
使い方
- 最小値と最大値を入力します。
- 複数必要なら個数を設定します。
- 重複が「偶然」ではなく「不具合」になる場面では、重複なしを有効にします。
Math.random() に範囲を掛けるだけではだめな理由
よくある式 Math.floor(Math.random() * (max - min + 1)) + min には 2 つの問題があります。予測可能な擬似乱数を使っていること、そして浮動小数点の掛け算で最大値がわずかに出にくくなることです。普段は見えませんが、どちらも実在する問題です。
この実装は crypto.getRandomValues() から 32 ビットを取り、範囲の大きさの最大倍数から外れた値を捨ててから、指定の範囲に対応づけます。予測可能性と偏りの両方が消え、代わりにときどき引き直しが発生します。
確認日:2026-10-21。このツールはすべてブラウザ内で動作します。サーバーもアカウントもなく、生成した内容は保存されません。
よくある質問
分布は本当に一様ですか?
整数については一様です。範囲内の各値は構造上まったく同じ確率になります。試行回数が少ないと偏って見えますが、それは分散であって偏りではありません。
小数も出せますか?
小数桁を 1 以上にしてください。内部的に整数へ拡大してから割り戻すので、浮動小数点の掛け算による丸めのずれが起きません。
抽選やプレゼント企画に使えますか?
気軽な抽選なら使えます。法的な意味を持つ用途では、方法とシードを事前に記録してください。そこでは再現性がアルゴリズムより重要です。
結果は暗号学的に安全ですか?
乱数源は安全です。ただしこのページは実用ツールであり、ギャンブル用ではありません。鍵やトークンの生成には使わず、パスワード生成器を使ってください。
関連ツール
乱数のその他のツール。