Генератор случайных чисел

Выбирайте одно или несколько случайных чисел между любым минимумом и максимумом, с повторами или без, по возрастанию или в порядке выпадения, а также дробные. Используется криптографически стойкая случайность браузера, поэтому все числа диапазона равновероятны.

Настройки

Быстрый выбор:
Совет: нажмите Enter в любом поле, чтобы сгенерировать снова.

Результат

Нажмите «Сгенерировать» или выберите быстрый вариант.

Недавние результаты

    Здесь хранятся ваши последние 10 результатов — только в этом браузере.

    Как сгенерировать случайное число

    1. Введите Минимум и Максимум. Оба граничных значения тоже могут выпасть, отрицательные числа тоже допускаются (например, от −50 до 50).
    2. Укажите в поле Количество чисел, сколько чисел вам нужно, — от 1 до 10 000.
    3. Оставьте в поле Знаков после запятой значение 0 для целых чисел или выберите от 1 до 6, чтобы получать числа вроде 3,75.
    4. Выключите Разрешить повторы, если все числа должны быть разными, и включите Сортировать результат, чтобы вывести их от меньшего к большему.
    5. Нажмите Сгенерировать (или Enter в любом поле). Чтобы сохранить числа, используйте Копировать или Скачать .txt и выберите разделитель: через запятую, по одному в строке или через пробел.
    6. Для типичных задач используйте быстрый выбор: 1–10, 1–100, бросок кубика, подбрасывание монетки или 6 уникальных чисел от 1 до 49. Последние 10 результатов появляются в блоке Недавние результаты.

    Как выбираются числа

    Генератор использует crypto.getRandomValues() — Web Crypto API, встроенный во все современные браузеры. Он выдаёт случайные биты из криптографически стойкого генератора, который браузер инициализирует из источника энтропии вашей операционной системы. Это более надёжный источник, чем Math.random(), который используют многие веб-страницы, но который не рассчитан на непредсказуемость.

    Случайные биты поступают блоками по 32 бита, то есть 4 294 967 296 возможных значений. Очевидный способ втиснуть их в меньший диапазон — операция взятия остатка (по модулю), но она даёт едва заметный перекос, если диапазон не делит 4 294 967 296 нацело. Небольшой пример делает проблему очевидной: с одним случайным байтом (256 значений) и диапазоном 1–100 каждое из чисел от 1 до 56 можно получить тремя способами, а числа от 57 до 100 — только двумя, поэтому маленькие числа выпадают на 50% чаще. С 32 битами смещение крошечное, но всё же реальное: для кубика 4 294 967 296 ÷ 6 даёт остаток 4, поэтому грани от 1 до 4 выпадали бы чуть-чуть чаще, чем 5 и 6.

    Этот инструмент устраняет смещение с помощью выборки с отклонением (rejection sampling): он принимает только случайные значения ниже наибольшего числа, кратного размеру диапазона, и в редких случаях, когда значение оказывается выше, берёт новое. Тогда каждое принятое значение отображается на диапазон одинаковое число раз, и все числа выпадают с точно одинаковой вероятностью. Для диапазонов шире 32 бит используются 53 случайных бита по тому же правилу.

    • Без повторов работает как вытягивание шаров из мешка: выбранное число убирается. Нельзя запросить больше уникальных чисел, чем есть в диапазоне; в 1–10 их всего 10.
    • Дробные числа выбираются равномерно среди всех значений с заданной точностью. При 2 знаках после запятой диапазон от 0 до 1 означает одно из 101 значения 0,00, 0,01 … 1,00, у каждого одинаковый шанс.
    • Сортировка меняет только порядок отображения; выпавшие числа остаются теми же.

    Примеры и вероятности

    ЗадачаНастройкиВероятность одного конкретного исхода
    Подбрасывание монеткиОрёл или решка1 из 2
    Бросок кубикаОт 1 до 6, 1 число1 из 6
    Выбор победителя из 250 участниковОт 1 до 250, 1 число1 из 250 для каждого участника
    Лотерея 6 из 49От 1 до 49, 6 чисел, без повторов1 из 13 983 816 для одной комбинации
    Случайная выборка для опросаОт 1 до 5 000, 200 чисел, без повторов, по возрастаниюу каждого человека 4% шанс попасть в выборку

    Результаты предназначены для игр, занятий в классе, выборок и честных розыгрышей. Прошлые результаты никогда не влияют на следующий розыгрыш, поэтому ни одно число никогда не «должно» выпасть. Для орла и решки с подсчётом и сериями используйте подбрасывание монетки. Чтобы выбрать из списка имён, а не чисел, попробуйте колесо фортуны для выбора имени; для надёжных паролей используйте генератор паролей, а для уникальных идентификаторов — генератор UUID.

    Конфиденциально и работает без интернета

    Каждое число генерируется в вашем браузере; на сервер ничего не отправляется. Ваши настройки и последние 10 результатов хранятся в локальном хранилище браузера на этом устройстве, поэтому они сохраняются после перезагрузки страницы, а кнопка Очистить историю их удаляет.

    Часто задаваемые вопросы

    Этот генератор случайных чисел действительно случайный?

    Он использует криптографически стойкий генератор браузера, который на практике непредсказуем и подходит для игр, розыгрышей и выборок. Строго говоря, это генератор псевдослучайных чисел, инициализируемый аппаратной и системной энтропией; именно такие генераторы операционные системы используют и для ключей шифрования.

    Как выбрать случайное число от 1 до 100?

    Нажмите быстрый выбор 1–100 или задайте минимум 1 и максимум 100 и нажмите «Сгенерировать». Могут выпасть и 1, и 100, а у каждого числа шанс 1 из 100.

    Как сгенерировать числа без повторов?

    Выключите «Разрешить повторы». Тогда каждое число может появиться только один раз, как в лотерейном барабане. Если запросить больше чисел, чем есть в диапазоне, инструмент покажет ошибку, а не начнёт повторять числа.

    Можно ли использовать его для розыгрыша призов?

    Да. Пронумеруйте участников, задайте диапазон от 1 до числа участников и сгенерируйте по одному числу на каждый приз с выключенными повторами. Для публичного розыгрыша включите демонстрацию экрана или запишите розыгрыш на видео, чтобы участники видели результат.

    Можно ли генерировать отрицательные или дробные числа?

    Да. Введите отрицательный минимум, например −100, и выберите от 1 до 6 знаков после запятой для дробных чисел. Когда дробные числа включены, минимум и максимум тоже могут быть дробными — с точностью до выбранного количества знаков.

    Обновлено

    Скопировано в буфер обмена