オンライン無料乱数ジェネレーター | 範囲指定で複数生成
コピー時の区切り文字
乱数ジェネレーターの仕組み
当社のジェネレーターは、Web Crypto API (crypto.getRandomValues()) から提供される暗号学的に安全な乱数を使用しています。セキュリティや統計目的には適さない擬似乱数である Math.random() とは異なり、crypto.getRandomValues() はシステムソースから真のエントロピーを提供します。
すべての生成はブラウザ内で直接行われます。数値がサーバーに送信されることはありません。
ジェネレーターの機能
基本設定
- 最小値と最大値 – 任意の整数または小数の範囲を設定
- 生成数 – 1回で1から10,000の数値を生成
- 重複 – 数値の繰り返しを禁止(抽選に適しています)
- ソート – 結果を最小値から最大値へソート
- 小数 – 小数に切り替え、精度を設定
クイックプリセット
| プリセット | 範囲 | 数 | 用途 |
|---|---|---|---|
| 🎲 サイコロ | 1–6 | 1 | ゲーム、意思決定 |
| 🪙 コイン | 0–1 | 1 | 表または裏 |
| 🎰 宝くじ | 1–49 | 6 | 宝くじシミュレーション |
| 💯 1–100 | 1–100 | 1 | 一般的な使用 |
乱数の用途
ゲームとエンターテイメント
- ボードゲーム – サイコロを振る、順番を決める
- 意思決定 – 何を選ぶべきか迷ったとき
- クイズやコンテスト – 質問や勝者のランダム選択
- RPGゲーム – キャラクターの属性生成
統計と科学
- サンプリング – 母集団からのランダムサンプル選択
- A/Bテスト – グループへのランダムな割り当て
- モンテカルロシミュレーション – 確率の推定
- ブートストラップ – リサンプリングのための統計手法
情報科学と開発
- テストデータ – テスト値の生成
- ニューラルネットワークの重み付けの初期化
- ランダムID – UUIDが大きすぎる場合
- ゲーミフィケーション – ランダムな報酬、ルートボックスメカニクス
真の乱数 vs. 擬似乱数
Math.random() | crypto.getRandomValues() | |
|---|---|---|
| 種類 | 擬似乱数 | 暗号学的に安全 |
| エントロピー源 | アルゴリズムのシード | システムCSPRNG |
| 速度 | 非常に速い | 速い |
| 予測可能? | 潜在的に可能 | いいえ |
| セキュリティに適しているか? | いいえ | はい |
| 統計に適しているか? | 場合による | はい |
当社のジェネレーターは常に暗号学的に安全な方法を使用しているため、結果はシミュレーション、統計計算、または抽選にも適しています。
重複なしの抽選
「重複を許可しない」オプションを選択すると、ジェネレーターは範囲内の各数値が結果に最大1回のみ出現することを保証します。これは以下に最適です。
- 抽選 – 同じ人が2回当選する可能性なく当選者を選出
- 順列 – 要素のランダムな並べ替え
- ビンゴ – 重複なしで数値を引く
- 宝くじ – 1〜49の範囲から6つの異なる数値
必要な生成数が範囲のサイズを超える場合、ジェネレーターはエラーメッセージを表示します。
結果のエクスポート
生成された数値は2つの形式でコピーできます。
- カンマ区切り –
12, 45, 7, 33– スプレッドシート(Excel、Googleシート)への貼り付けに適しています - 行ごと – 各数値が個別の行に表示 – テキストファイルやスクリプト処理に適しています
独自のコードで乱数を生成する方法
JavaScript / TypeScript
// [min, max] 範囲内の暗号学的に安全なランダムな整数
function randomInt(min, max) {
const range = max - min + 1;
const arr = new Uint32Array(1);
crypto.getRandomValues(arr);
return min + (arr[0] % range);
}
// 擬似乱数 (高速だが安全ではない)
const n = Math.floor(Math.random() * (max - min + 1)) + min;
Python
import random
import secrets
# 暗号学的に安全
n = secrets.randbelow(max - min + 1) + min
# 擬似乱数 (標準ライブラリ)
n = random.randint(min, max)
# 重複なし
sample = random.sample(range(min, max + 1), count)
PHP
// 暗号学的に安全 (PHP 7+)
$n = random_int($min, $max);
// 擬似乱数 (古いアプローチ)
$n = rand($min, $max);
よくある質問 (FAQ)
結果は本当にランダムですか?
はい。ブラウザに実装されている暗号学的に安全な擬似乱数ジェネレーター(CSPRNG)であるcrypto.getRandomValues() を使用しています。結果は統計的に均一に分布しており、予測不可能です。