Фрилансеры предложат решение вашей задачи уже через несколько минут!
Публикация заказа не займет много времени.
Михаил Скляренко
39 лет, Украина
6 лет в сервисе
Был онлайн 1 день назад

Необходимо написать программу, которая вычисляла бы вероятность выигрыша в раздаче и показывала оптимальный ход для карточной игры "21 очко" с 1й колодой (36 карт).  
Наверняка, все знают, как играть в "очко", но вот более подробное описание механики игры:  
Правила:  
-играют Дилер и Игрок.
После раздачи карт (по 2 карты каждому), Игрок первым принимает решение  Добрать или Остановиться.
Игрок побеждает, если сумма очков больше, чем у Дилера, или если Дилер перебирает.   
Дилер побеждает, если сумма его очков в итоге больше, или если Игрок перебирает.  
Дилер добирает карты после того, как Игрок решит остановиться.
Дилер обязан брать, если сумма его карт 16 и меньше.
Если сумма карт от 17 до 21  Дилер обязан остановиться.  
В случае, если Игрок набирает 21 очко, Дилер имеет право добрать себе карты, чтобы также набрать 21 и вывести раунд в ничью.  
В случае, если Игрок или Дилер получает карманные 21 (в первой же раздаче получает комбинацию Т+10 или два туза, которые тоже считаются за 21), это означает моментальную победу в раунде.  
Значения карт: Т 11, К 4, Д 3, В 2, остальные  6,7,8,9,10  по номиналу.  
Как вижу реализацию программы:  
1. Ввести значения стартовых карт Игрока и Дилера  
2. Программа покажет вероятность победы в раздаче, исходя из этих карт  
3. Программа покажет оптимальный ход для Игрока  
4. После совершения хода, в программу можно ввести значение полученной карты и снова увидеть оптимальный ход, в изменившейся ситуации.  
Расчет несложный, поскольку используется 1 колода, известно общее кол-во карт, следовательно стартовая вероятность выпадения карты после 1-го добора Игроком  1/32.  
Но необходимо все это реализовать именно в формате десктопного софта.
Язык написания, внешний вид  абсолютно любые, лишь бы систему не тормозило.
Возможность сохранять историю  желательная, но не обязательная опция.