Подбрасывание монеты
Подбросьте монету онлайн и получите случайно орла или решку
Что такое инструмент подбрасывания монеты?
Инструмент подбрасывания монеты имитирует случайный выбор из двух вариантов: орел или решка. Он полезен для быстрых решений с низкими последствиями, когда оба варианта приемлемы: кто начинает первым, какой черновик смотреть сначала, какой маршрут выбрать. Онлайн-формат удобен тем, что результат сразу виден и может попадать в историю с сериями и процентами. Честная монета на большом числе бросков стремится к распределению 50/50, но короткие серии часто выглядят неровно; это нормальное поведение вероятности. Инструмент подходит для бытовых решений, уроков по вероятности и игр. Его не следует использовать для официальных розыгрышей, юридических решений или ситуаций, где нужна проверка личности.
Как использовать
Как использовать
- Нажмите кнопку «Подбросить монетку»
- Наблюдайте за анимацией подбрасывания и дождитесь результата
- Посмотрите результат (орёл или решка)
- История отслеживает количество и проценты орлов и решек
- Нажмите «Очистить историю», чтобы сбросить всю статистику
Примечания о случайности
- Используйте результат только для несерьёзных решений: случайность в браузере подходит для развлечения, но не для азартных игр, безопасности или официальных лотерей.
- Если от результата зависят несколько человек, заранее договоритесь, имеет ли значение история или повторные броски.
Применение
Технический принцип
При каждом подбрасывании извлекается один байт из crypto.getRandomValues(new Uint8Array(1)) и проверяется младший бит: 0 соответствует решке, 1 — орлу. Спецификация WHATWG Web Cryptography требует, чтобы Web Crypto API получал байты из криптографически стойкого генератора псевдослучайных чисел (CSPRNG), который обычно использует энтропийный пул ОС (getrandom в Linux, CryptGenRandom/BCryptGenRandom в Windows, SecRandomCopyBytes в macOS/iOS). Math.random() явно определён как некриптографический, возвращает 53-битное число с плавающей точкой по неспецифицированному алгоритму (в V8: xorshift128+) и статистически смещён и предсказуем по нескольким образцам вывода, поэтому инструмент не использует его для принятия решения. По сильному закону больших чисел эмпирическая доля орлов стремится к 0,5 при увеличении числа бросков N, но для конечного N биномиальное распределение Bin(N, 0,5) имеет дисперсию N x 0,25 и стандартное отклонение 0,5 x sqrt(N). Для N = 100 доверительный интервал 95% составляет 50 +/- 10, поэтому наблюдаемое соотношение 60/40 вполне укладывается в нормальную дисперсию и не свидетельствует о смещённом генераторе. Серии подчиняются геометрическому распределению: вероятность встретить хотя бы k последовательных орлов где-то в N бросках приблизительно равна 1 - (1 - 0,5^k)^(N-k+1), что даёт около 17% для серии из 6 при 100 бросках — это тоже нормально и не подозрительно. Анимация монеты управляется requestAnimationFrame, который синхронизируется с циклом перерисовки браузера (обычно 60 Гц, 16,67 мс на кадр, выше на дисплеях 120 Гц), а история сохраняется в localStorage, чтобы счётчик серий переживал обновление страницы в пределах одного origin. Статистически значимый тест для реальной неравномерной физической монеты требует около 10 000 бросков для обнаружения смещения в 1% при 95% достоверности; CSPRNG-источник этого инструмента исключает этот вопрос для цифровых бросков. Для важных лотерей или юридически значимых розыгрышей лучше использовать аудируемый сервис RNG или сертифицированный аппаратный генератор, поскольку случайность на стороне браузера не оставляет внешне проверяемого следа.
- crypto.getRandomValues заполняет Uint8Array из CSPRNG; Math.random не является криптографическим и может быть предсказан.
- Правило решения: byte & 1, где бит 0 соответствует решке, а бит 1 — орлу (равномерное распределение 50/50 по одному биту).
- Дисперсия Bin(N, 0,5) равна 0,25 x N; соотношение 60/40 при 100 бросках вполне укладывается в нормальную дисперсию +/-2 сигма.
- Для обнаружения смещения физической монеты в 1% при 95% достоверности нужно около 10 000 бросков — это далеко за пределами учебных выборок.
- Анимация управляется requestAnimationFrame с частотой обновления дисплея (обычно 16,67 мс на кадр).
- Счётчики серий и история сохраняются через window.localStorage и действуют только в пределах данного origin.
- Случайность на стороне браузера не оставляет внешне аудируемого следа; для юридических розыгрышей используйте сертифицированный RNG-сервис.
Примеры
Серия из 10 бросков (одна сессия)
Бросок #1 -> Орёл
Бросок #2 -> Решка
Бросок #3 -> Решка
Бросок #4 -> Орёл
Бросок #5 -> Орёл
Бросок #6 -> Орёл (серия: 3)
Бросок #7 -> Решка
Бросок #8 -> Орёл
Бросок #9 -> Решка
Бросок #10 -> Решка
Итого: Орлов 5 (50 %), Решек 5 (50 %)Статистика 100 бросков (типичный прогон)
Всего бросков : 100
Орлов : 52 (52 %)
Решек : 48 (48 %)
Длинная серия орлов : 6
Длинная серия решек : 5
Наблюдение : Короткие серии редко дают ровно 50/50.Лучший из 3 — кто платит за счёт
Игрок A выбирает Орёл, игрок B — Решку.
Раунд 1: Орёл -> побеждает A
Раунд 2: Решка -> побеждает B
Раунд 3: Орёл -> побеждает A (итог: A 2 - B 1)
За счёт платит B.Демонстрация вероятности на уроке (50 бросков)
После 10 бросков : Орлов 7 Решек 3 (70 % / 30 %)
После 25 бросков : Орлов 14 Решек 11 (56 % / 44 %)
После 50 бросков : Орлов 26 Решек 24 (52 % / 48 %)
Вывод: с ростом выборки доли стремятся к 50/50.Часто задаваемые вопросы
Действительно ли подбрасывание случайное?
Да. Страница использует crypto.getRandomValues из Web Crypto API, который инициализируется из криптографического пула случайных чисел ОС. Каждое подбрасывание независимо — прошлые результаты не влияют на следующее. Обновление страницы не сбрасывает случайность.
Почему у меня выпало пять «орлов» подряд?
Случайность не означает «равномерное чередование». Вероятность пяти одинаковых сторон подряд — 1/16 ≈ 6,3%, это необычно, но не редкость. Длинные серии нормальны для любой настоящей случайной последовательности; идеально чередующиеся последовательности на самом деле — признак человеческой предвзятости, а не случайности.
Каждое подбрасывание действительно 50/50?
Да — точно. У реальных монет есть небольшое физическое смещение (сторона, направленная вверх, чуть чаще остаётся вверху), но у компьютерного симулятора такого смещения нет — обе стороны имеют ровно 50,000…%. Используйте это для честного выбора.
Справедлив ли результат для группового решения?
Математически — да. С социальной точки зрения этапы «соглашаемся ли мы бросать» и «передоговоримся ли после броска» важнее самого броска. Договоритесь до подбрасывания, что результат будет принят.
Можно ли увидеть статистику серии бросков?
Страница подбрасывает по одной монете за раз и отслеживает историю бросков, количество орлов/решек, проценты, текущую серию и самую длинную серию за сессию. Статистика даёт сводку по всем броскам. История сбрасывается при закрытии вкладки или нажатии «Очистить историю».
Сохраняются ли результаты моих бросков?
Недавние броски хранятся во вкладке браузера в течение сессии. Закрытие вкладки обычно их стирает; в некоторых сборках они сохраняются в localStorage. Никуда не загружаются и никому не передаются.
Можно ли использовать это для юридически значимых решений?
Для мелких решений (кто платит за обед, кто ходит первым) — да. Для всего юридически значимого (опека, контракты, раздел имущества) нужна задокументированная физическая процедура с понятыми. Веб-инструмент нельзя проверить постфактум.