Генератор случайных чисел онлайн и бесплатно
Как работает генератор случайных чисел?
Наш генератор использует криптографически стойкие случайные числа из Web Crypto API (crypto.getRandomValues()). В отличие от Math.random(), который является псевдослучайным и не подходит для целей безопасности или статистики, crypto.getRandomValues() обеспечивает истинную энтропию из системного источника.
Вся генерация происходит непосредственно в вашем браузере — никакие числа не отправляются на сервер.
Функции генератора
Основные настройки
- Минимум и максимум – установите любой целочисленный или десятичный диапазон
- Количество чисел – сгенерируйте от 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 |
| Скорость | Очень быстрые | Быстрые |
| Предсказуемые? | Потенциально да | Нет |
| Подходят для безопасности? | Нет | Да |
| Подходят для статистики? | Зависит | Да |
Наш генератор всегда использует криптографически стойкий вариант, поэтому результаты подходят для симуляций, статистических расчетов или лотерей.
Генерация без повторений
При включении опции «Разрешить дубликаты» генератор гарантирует, что каждое число в диапазоне появится в результате не более одного раза. Это идеально подходит для:
- Лотерей – выбор победителей без возможности, что один и тот же человек выиграет дважды
- Перестановок – случайное упорядочивание элементов
- Бинго – вытягивание чисел без повторений
- Типичных лотерей – 6 различных чисел из диапазона 1–49
Если требуемое количество чисел превышает размер диапазона, генератор выдаст сообщение об ошибке.
Экспорт результатов
Сгенерированные числа можно скопировать в двух форматах:
- Разделенные запятыми –
12, 45, 7, 33– подходит для вставки в таблицы (Excel, Google Sheets) - Каждое число на новой строке – каждое число на отдельной строке – подходит для текстовых файлов или обработки скриптом
Как сгенерировать случайные числа в собственном коде?
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)
Действительно ли результат случаен?
Да. Мы используемcrypto.getRandomValues(), который является криптографически стойким генератором псевдослучайных чисел (CSPRNG), реализованным в браузере. Результаты статистически равномерно распределены и непредсказуемы.