Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как бы вы сгенерировали случайное число от 1 до 7, имея всего один шестигранный кубик?

ПрограммированиеМатематика+3
Анонимный вопрос
Data Science
  · 50,6 K
Веб-разработчик, геймер, специалист по этике  · 22 дек 2021
Вам какое распределение вероятностей нужно-то? Равномерное, нормальное? ;) Это важная деталь. Для равномерного распределения нам нужен способ генерировать события с вероятностью 1/7 каждое. Перемножим 7 и 6 получим 42. Броски кубика независимы. Поэтому можно считать, что каждый бросок покрывает отдельную часть пространства состояний. Бросаем кубик 7 раз. Каждый бросок равновероятно покрывает одну из шести частей своего фрагмента пространства состояний. Значит, можно сложить полученные числа и получить случайную величину, равномерно распределенную от 7 до 42. Делим её на 7, нормализовав её таким образом в то, что нам было нужно. Дробные числа округляем традиционным способом.
2 эксперта не согласны
если мы кидаем кубик 7 раз подряд, то пространство исходов такого действия состоит из 6**7=279936 (6^7) точек, а... Читать дальше
@Andrei Novikov, я не специалист по теории вероятности и в терминологии могу путаться. Тем не менее, какая разница, делится ли полученное число нацело или нет? Всё, что нас интересует, это получить случайное распределение такое же, как у целевого случайного значения.
Проблема моего решения не в этом, а в том, что если сложить броски семи кубиков, получится колокол, а не равномерное распределение, как я только что сам себе показал в экселе. Странно, что вы указали не на это, а на самую незначительную проблему моего решения.
При суммировании получается нормальное распределение в грубом приближении.
Замечу, что мой ответ в принципе неверен, потому что содержит детскую ошибку: если мы складываем последовательные броски кубика, мы получим случайную величину с нормальным распределением, а не с равномерным. Вообще не обращайте на мой ответ внимания.
То, что я пытался в ответе описать, достигается гораздо более простым способом: бросаем кубик и умножаем на 7/6. То есть, делим на 6, нормализуя до единицы, а потом умножаем на семь, нормализуя до семёрки. Это супер старый трюк, который используется в программировании, когда у нас есть генератор случайных чисел, выдающий числа в одном диапазоне, но нам нужно число в другом диапазоне.
Однако, этот трюк работает только для непрерывных величин, если наш генератор случайных чисел выдаёт произвольное действительное число из заданного диапазона. Для дискретных величин, таких, как результат броска шестигранного кубика, этот метод не подходит, потому что диапазон мы получим верный, но различных вариантов значения у нас будет всё так же 6, а не семь. В зависимости от выбранного метода округления одного из чисел между 1 и 7 мы не получим никогда.
У меня такой же один вариант. Удалил.
кандидат физико-математических наук, математик, исследователь, data scientist, предпринима...  · 22 дек 2021  · novikovlabs.ru
Бросаю кубик дважды и конкатенирую результаты. Могут получиться результаты от 11 до 66 с пропусками.(всего 36 чисел) Нахожу остаток от деления на 7 получившегося числа 14, 21, 35, 42, 56, 63 дают 0 15, 22, 36, 43, 64 дают 1 16, 23, 44, 51, 65 дают 2 24, 31, 45, 52, 66 дают 3 11, 25, 32, 46, 53 дают 4 12, 26, 33, 54, 61 дают 5 13, 34, 41, 55, 62 дают 6 В случае... Читать далее
6 экспертов согласны
Да, с единственным замечанием, что нет гарантии закончить генерацию за конечное время
Кандидат физико-математических наук, выпускник ШАД  · 22 дек 2021
Если погуглить, то вот что предлагает первая ссылка. TL;DR:
  1. бросьте кубик 2 раза, пусть на первом кубике выпало X, на втором Y
  2. если X<6, то ваше случайное число равно Y
  3. если X=6 и Y<6, то ваше случайное число равно 7
  4. если X=Y=6, то вернитесь к шагу 1
6 экспертов согласныи1 эксперт не согласен
Эдак можно до бесконечности возвращаться!
Сингулярист, любитель занимательной математики, распространитель идей  · 22 дек 2021
Возможно автор имел ввиду за одно выкидывание кубика? Тогда возможно, начиная со второго выкидывания такую тактику предлагаю, к первому выкидыванию(вне зачёта) прибавлять второе и вычитать 5 - результат и "в зачет", следующее выкидывание прибавляем к предыдущему (и вычитаем 5) итд - вот такой рекуррентный способ. Не уверен пока что случайное число... upd2015221221 а)Если... Читать далее
Инженер-радиофизик, преподаватель физической культуры и спорта  · 6 мая 2022
Реально: шестигранный кубик не даёт выпадение числа от 1 до 6 с равной вероятностью, так как нельзя получить идеальный куб ещё и с центром масс в центре куба, изготовленный с «допусками и посадками». Поудалял все свои неверные варианты! Утверждаю: эта задача неразрешима, если в условии необходимо получить, выбирая каждый раз числа от 1 до 6 с равной вероятностью, и... Читать далее
Специалист ИТ с физмат образованием  · 24 дек 2021
Вариантов очень много.
Надо проштудировать раздел теории вероятности по работе со случайной величиной.
Имея случайную величину x={1...6} с равномерным распределением можно состроить все что угодно при условии что вы не ограничены в числе повторно используемых величин x
Фундаментальный вопрос рациональности: почему ты веришь в то, во что веришь?Перейти на hpmor.ru
1 эксперт согласени1 эксперт не согласен
Зачем тогда что-то доказывать, если получится чтоугодный результат.
Научные заметки о жизни: zen.yandex.ru/id/5c43498395753900ac66852d  · 16 янв 2022
Бросаем кубик 7 раз. Результат - номер броска давший максимальный результат. Если таких несколько, то выбираем между ними аналогичным образом.
Такая схема работает хоть с кубиком, хоть с монетой.
1 эксперт согласени1 эксперт не согласен
Числа случайные, но неравновероятны.
Хороший парень.. веселый такой  · 22 дек 2021
Здесь имеется ввиду без 7. Просто подбросил бы кубик и отобразилось бы случайное число от 1 до 6. Вот т всн. Все просто. Вопрос с подвохом конечно
2 эксперта не согласны
с чего вы взяли, что имелось в виду без семи
Инженер-программист  · 22 дек 2021
Бросить кубик несколько раз и разбить вероятный диапазон выпадения на несколько участков, равных по вероятности выпадения. К примеру, общее кратное у 6 и 7 - 42. Получаем диапазон 7-42. 7-11 считать как 1, 12-16 считать как 2 и т.д. 42 считать как переброс
1 эксперт не согласен
Числа неравновероятны