14:12
Пишем блэкджек на phyton

Ну, точнее, не блэкджек, а его мини-вариант под названием очко.

Для реализации нам понадобится колода карт, из которой каждый раз мы будем вынимать по карте и прибавлять к результату.

Далее, сами "карты": шестерка, семерка, восьмерка, девятка, десятка, валет (достоинством 2), дама (3), король (4), и туз (11).

koloda = [6,7,8,9,10,2,3,4,11] * 4

Случайным образом перемешаем карты, используя функцию shuffle из модуля random.

import random
random.shuffle(koloda)

И, собственно, начинаем играть:

print('Поиграем в очко?')
count = 0

while True:
 choice = input('Будете брать карту? y/n\n')
 if choice == 'y':
 current = koloda.pop()
 print('Вам попалась карта достоинством %d' %current)
 count += current
 if count > 21:
 print('Извините, но вы проиграли')
 break
 elif count == 21:
 print('Поздравляю, вы набрали 21!')
 break
 else:
 print('У вас %d очков.' %count)
 elif choice == 'n':
 print('У вас %d очков и вы закончили игру.' %count)
 break

print('До новых встреч!')

Изначально у пользователя 0 очков. Мы его спрашиваем, будет ли он брать карту, на что он должен ответить y или n. Если пользователь ответил n, то мы говорим ему, сколько очков он набрал, и завершаем программу. Если он изъявил желание взять карту (ух, какой нехороший пользователь :)), то мы снимаем ему карту из списка (с помощьюметода pop). Мы снимаем последнюю карту, хотя вообще без разницы, какую снимать, ведь они перемешаны.

Прибавляем к числу очков достоинство снятой карты, а дальше смотрим, сколько всего очков у пользователя. Если количество очков больше 21, то извиняйте, пользователь проиграл. Если число очков равно 21, то пользователь выиграл. Если меньше - еще раз спросим пользователя, будет ли он брать карту.

В конце игры прощаемся с пользователем.

Просмотров: 773 | Добавил: ghost_mod | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Подписка:1
Код *: