乱数生成ツール|範囲・個数指定・重複なし対応
1~1,000個を指定できます。
範囲と個数を指定して、乱数を生成してください。
このツールでできること
指定した最小値から最大値までの両端を含む範囲で、整数の乱数を1~1,000個生成できます。負数と0を含む範囲にも対応し、必要に応じて同じ実行結果内で重複しないように生成できます。
使い方
- 最小値と最大値を入力します。
- 生成する個数を入力します。
- 同じ数を出したくない場合は「重複を許可しない」を選択します。
- 「乱数を生成」を押します。
- 必要に応じて「結果をコピー」を押し、生成結果だけをまとめてコピーします。
入力例・出力例
最小値1、最大値6、生成個数3を指定すると、1〜6の整数を3件、1行ずつ生成します。表示される値と順序はランダムに決まります。
「重複を許可しない」を選ぶと、同じ実行結果内で同じ整数は出ません。1〜6の範囲で7件以上を指定することはできません。
最小値と最大値をともに-9,007,199,254,740,991、生成個数を1にすると、結果は-9007199254740991になります。範囲の入力には正しい3桁区切りカンマを使えますが、結果にはカンマを付けません。
よくある利用場面
- サイコロ相当の数値やテスト用の整数をまとめて作るとき
- 範囲内から重複なしで番号を抽出するとき
- 表計算や開発用データへ貼る乱数リストを作るとき
乱数の生成方法と利用上の注意
Web Crypto APIのcrypto.getRandomValues()で得た乱数を使い、範囲内の各整数を同じ確率で選びます。
「重複を許可しない」場合は、すでに選ばれた整数を引くたびに引き直します。Web Crypto APIを利用できない場合や乱数の取得に失敗した場合はエラーとし、Math.random()へ切り替えません。
シード値を指定して同じ並びを再現する機能はありません。生成結果、抽選過程、シード値を保存せず、第三者が後から同じ抽選を再現・検証する証跡も作らないため、監査可能な抽選が必要な用途には向きません。パスワード、暗号鍵の生成には対応していません。
処理仕様
最小値と最大値は、JavaScriptの安全な整数である-9007199254740991から9007199254740991まで指定できます。入力は整数文字列のまま正確に検証・計算し、最小値と最大値も生成範囲へ含めます。最小値と最大値が同じ場合、重複を許可すれば同じ値を指定個数だけ生成できます。重複なしでは、生成個数を範囲内の整数数以下にする必要があります。
最小値と最大値には半角数字、先頭の-、正しい3桁区切りカンマを使用できます。先頭の+、全角数字、小数、指数表記、単位、不正なカンマ、数値途中の空白は使用できません。入力前後の空白は除去しますが、CR・LFは先頭や末尾にある場合も受け付けません。
生成個数は半角数字だけで1~1,000を指定し、0003のような先頭の0は使用できます。生成個数ではカンマを使用できないため、上限は1000と入力します。結果は生成順を保ち、3桁区切りなしの整数を1行1個で表示・コピーします。範囲、個数、重複設定を変更すると以前の結果は消去され、「クリア」では初期値の1~100、1個、重複許可へ戻ります。
入力データについて
入力した範囲と生成結果はブラウザ内だけで処理され、ToolRollのサーバーや外部サービスへ送信されません。外部ライブラリ、Cookie、localStorage、sessionStorage、IndexedDB、ブラウザの履歴を使用せず、入力値や生成結果も保存しません。「結果をコピー」を押したときだけ、表示中の結果をブラウザのクリップボードへ書き込みます。