Что такое генератор случайных чисел?
Генератор случайных чисел (ГСЧ) выдаёт непредсказуемые числа в заданных вами пределах. Этот инструмент создаёт случайные целые числа между минимальным и максимальным значением (оба входят в диапазон). Можно получить как одно число, так и сразу несколько, а также выбрать, разрешены ли повторы. Это удобно для розыгрышей и конкурсов, выбора «лотерейных» чисел, определения победителя из списка, распределения по командам, бросков кубика и игровых ситуаций, выборки данных — словом, везде, где нужен беспристрастный выбор.
Как пользоваться
Укажите Минимум и Максимум диапазона, задайте, сколько чисел вам нужно (от 1 до 100), и решите, разрешать ли повторы. Если отключить повторы, генератор вернёт только разные значения — а если вы запросите больше чисел, чем способен дать диапазон, количество автоматически уменьшится до числа доступных значений.
Как работает формула
Для одного целого числа используется выражение $$r = \text{min} + \left\lfloor \text{rand}() \times \left( \text{max} - \text{min} + 1 \right) \right\rfloor$$ где \(\text{rand}()\) — равномерная дробь в полуинтервале [0, 1). Умножение на размер диапазона \((\text{max} - \text{min} + 1)\) и округление вниз дают смещение от 0 до range−1, которое прибавляется к \(\text{min}\). Благодаря этому каждое целое число внутри диапазона (включая концы) выпадает с одинаковой вероятностью. Чтобы получить несколько чисел, процесс просто повторяется; если повторы запрещены, уже выбранные значения убираются из набора и не могут появиться снова.
Разбор примера
Допустим, нужно 3 разных числа в диапазоне от 1 до 6. Размер диапазона равен $$6 - 1 + 1 = 6$$ Генератор выбирает из набора {1, 2, 3, 4, 5, 6}, удаляя каждое выбранное значение, поэтому может получиться, например, 4, 1, 6 — три разных числа без повторов. Если же повторы разрешены, результат может выглядеть как 4, 4, 1.
Частые вопросы
Числа действительно случайны? Они псевдослучайные — их формирует программный алгоритм, который статистически равномерен и более чем подходит для игр, розыгрышей и повседневных задач, но не годится для криптографии.
Минимум и максимум входят в диапазон? Да. Оба крайних значения могут выпасть — интервал включает обе границы.
Что будет, если минимум больше максимума? Значения автоматически меняются местами, чтобы диапазон остался корректным.