logo
Развлечения и игры: моделирование вероятности событий в азартных играх и спорте

2. Вероятность получить три карты одинакового достоинства при игре в пятикарточный покер с обменом

Обычная колода карт содержит 4 карты каждого достоинства - 4 туза, 4 двойки и так далее до четырех королей. Чтобы оценить вероятность получения определенной покерной комбинации, мы назначим тузу значение 1, двойке - 2 и далее по старшинству, так, чтобы валету соответствовало значение 11, даме - 12, королю - 13.

В пятикарточном покере с обменом вам сдают пять карт. Многие вероятности могут быть интересными, однако давайте оценим с помощью моделирования вероятность получения трех карт одинакового достоинства, т.е. получения трех карт одного ранга и отсутствие пар (пара и три карты одного ранга на руках образуют комбинацию «фулл хаус»). Чтобы смоделировать пять сданных карт, мы сделаем следующее (см. рис. 2):

· сопоставим случайное число с каждой картой колоды;

· пяти отобранным картам назначим наименьшие случайные числа. Это обеспечит каждой карте одинаковую вероятность быть отобранной;

· подсчитаем, сколько каких карт (начиная с туза и заканчивая королем) сдано.

·

Рис.2. Моделирование игры в покер для оценки вероятности сдачи трех карт одного достоинства

Для начала перечислим в ячейках D3:D54 все карты колоды: четыре «первых», четыре «вторых» и так далее до четырех «двенадцатых» и четырех «тринадцатых». Затем скопируем из ячейки Е3 в диапазон Е4:Е54 функцию СЛЧИС( ) [RAND( )], чтобы сопоставить с каждой картой колоды случайное число. Скопировав из ячейки С3 в диапазон С4:С54 формулу РАНГ (Е3;$Е$3:$Е$54;1), мы получим упорядоченный по возрастанию ряд всех случайных чисел (назовем его рангом числа). Например, на рис.2 видно, что первая из «третьих» карт колоды (строка 11) сопоставлена с 24-м по величине случайным числом (в электронной таблице у вас будут другие результаты, поскольку при ее открытии случайные числа генерируются заново).

Синтаксис функции РАНГ (RANK) - РАНГ (число; ссылка; 1 или 0). Если последний аргумент функции РАНГ (RANK) равен 1, функция возвращает ранг числа в массиве, присваивая первому по величине наименьшему числу ранг 1, второму по величине наименьшему числу - ранг 2 и так далее. Если последний аргумент функции РАНГ (RANK) равен 0, функция возвращает ранг числа в массиве, присваивая первому по величине наибольшему числу ранг 1, второму по величине наибольшему числу - ранг 2 и так далее.

При ранжировании случайных чисел совпадения невозможны (потому что у случайных чисел должны совпасть шестнадцать знаков).

Предположим, например, что мы ранжируем числа 1, 3, 3 и 4 и последний аргумент функции РАНГ (RANK) равен 1. Excel вернет следующие значения рангов:

Число

Ранг (наименьшему числу присваивается ранг 1)

1

3

3

4

1

2

2

4

Поскольку 3 - второе по величине наименьшее число, ему должен быть присвоен ранг 2. Другому числу 3 также будет присвоен ранг 2. Поскольку 4 - четвертое по величине наименьшее число, ему будет присвоен ранг 4.

Скопировав из ячейки В3 в диапазон В4:В7 формулу ВПР (А3; поиск; 2; ЛОЖЬ), мы сдаем пять карт из колоды. Данная формула «сдает» пять карт, соответствующих пяти наименьшим по величине случайным числам (диапазону таблицы поиска C3:D54 присвоено имя поиск). Значение ЛОЖЬ используется в функции ВПР (VLOOKUP) потому, что нам на требуется сортировка рангов по возрастанию.

Назначив имя диапазона карты_на_руках нашим сданным картам (диапазон В3:В7) и скопировав из ячейки J3 в диапазон J4:J15 формулу СЧЕТЕСЛИ (карты_на_руках;I3), мы подсчитаем, сколько каких карт сдано. В ячейке J17 мы определяем, есть ли у нас три карты одного ранга по формуле ЕСЛИ(И(МАКС(J3:J15)=3;СЧЕТЕСЛИ(J3:J15;2)=0);1;0). Эта формула возвращает 1 тогда и только тогда, если в нашу комбинацию попало три карты одинакового достоинства и нет пар.

Далее при помощи таблицы подстановки с одним параметром моделируем 400 покерных комбинаций. В ячейке J19 мы копируем результат из ячейки J17 с помощью формулы =J17. После этого мы выделяем диапазон таблицы I19:J4019. Выбрав из меню Данные (DATA) команду Таблица подстановки (Table), мы создаем таблицу подстановки с одним параметром, указывая в поле Подставлять значения по строкам в (Column Input Cell) любую пустую ячейку. Щелкнув ОК, мы смоделируем 4000 покерных комбинаций. В ячейке G21мы подсчитываем вероятность сдать три карты одного достоинства по формуле СРЗНАЧ(J20:J4019). Она равна 1,9% (используя основы теории вероятности, можно доказать, что вероятность получения трех карт одного достоинства равна 2,1%).