Статья Автор: Лебедев Дмитрий

TUZ_5-13. Количество очков в игре в кости «Скала»

TUZ_5-13. Количество очков в игре в кости «Скала»

TUZ_5-13. Количество очков в игре в кости «Скала»
5.13. Количество очков в игре в кости «Скала»
«Скала» – это игра в кости, в которой каждый игрок бросает три кубика.
Цель этого задания – сымитировать бросок трех кубиков и вернуть полученное количество очков.
Правила для этого задания проиллюстрированы в таблице ниже.
Если комбинация выброшенных кубиков не соответствует ни одной из показанных в таблице ниже,
то в качестве результата принимается наибольшее количество очков, выпавших на одном из кубиков.
Ваша задача: написать функцию, которая принимает результат броска трех кубиков и возвращает количество очков,
подсчитанных в соответствии с правилами.

В табл. 5.13 показаны ожидаемые результаты для некоторых входных данных.
Таблица 5.13. Некоторые ожидаемые результаты для задачи определения количества очков в игре в кости «Скала»
Dice Ожидаемый результат
3,2,1 20
4,4,4 25
6,6,6 25
1,3,6 6

Алгоритм
Сначала создаются два массива: index и Sum_of_each_Number, оба размером 6.
Массив index используется для отслеживания того, сколько раз каждое число появляется в списке dice,
а массив Sum_of_each_Number – для хранения сумм каждого числа в списке dice.
Затем циклически перебираются первые три элемента в списке dice и обновляются
соответствующие элементы массивов index и Sum_of_each_Number с применением правил подсчета очков.
Если обнаруживается совпадение с одной из комбинаций в таблице выше, то счет соответствующим образом обновляется.
Если совпадения не найдено, возвращается наибольший элемент в списке dice.


Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать