VITON13School

VITON13 SCHOOL · Математика

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

Числа, имена, команды, кубики и монетка — честный жребий от криптографического генератора вашего браузера. Ничего никуда не отправляется.

Автор: , основатель VITON13 SCHOOL
Готовые варианты

Криптографический генератор браузера: у каждого значения равные шансы.

Результат

Нажмите кнопку — результат появится здесь.

История

Здесь появятся ваши результаты.

Последние 20 результатов, только в этом браузере.

Как пользоваться

  1. Выберите режим«Числа» — для диапазона, «Список» — для жребия по именам, «Команды» — чтобы разделить группу, «Кубики» и «Монетка» — для игр.
  2. Задайте правилаОт и до, сколько чисел, без повторов, по порядку, дробные — или нажмите готовый вариант: 1–100 или 6 из 49.
  3. Получите результатНажмите кнопку, скопируйте результат одним касанием, а последние 20 результатов найдёте в истории.

Насколько это честно

Каждое значение берётся из crypto.getRandomValues — встроенного в браузер криптографически стойкого генератора, а не из более простого Math.random.

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

С опцией «Без повторов» числа вытягиваются как шары из барабана: выпавшее больше не участвует. Команды собираются так: весь список перемешивается и раздаётся по очереди, как карты, поэтому команды отличаются по размеру не больше чем на одного человека.

Вопросы

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

Используется криптографический генератор браузера (crypto.getRandomValues): он получает начальную случайность от вашего устройства и устроен так, что его результат нельзя предсказать. Метод отбраковки делает все значения диапазона равновероятными.

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

Включите «Без повторов» — тогда каждое число выпадет не больше одного раза, как в лотерее. Если попросить больше чисел, чем есть в диапазоне (например, 6 разных чисел от 1 до 5), генератор об этом скажет.

Можно выбрать случайное имя или разделить класс на команды?

Да. Вставьте имена по одному в строке. В режиме «Список» генератор вытянет одного или нескольких победителей без повторов, в режиме «Команды» разделит всех на заданное число команд или на команды заданного размера, и команды получатся ровными.

Сохраняются ли мои числа и списки?

Всё работает в вашем браузере. Последние 20 результатов хранятся только в этом браузере, чтобы их было видно после перезагрузки; кнопка «Очистить» их удаляет. На сервер ничего не отправляется.

Источники

  1. MDN Web Docs — Crypto.getRandomValues()

Статьи по теме

Ещё инструменты

Математика