• Предмет: Информатика
  • Автор: kotolesia3189
  • Вопрос задан 3 месяца назад

Створити програму-модель гри «Камінь – ножиці - папір», Пайтон


hilkaveta: між двома гравцями, чи одним гравцем і компʼютером?
kotolesia3189: між компютером
hilkaveta: зараз буде
kotolesia3189: спс
kotolesia3189: жду
hilkaveta: извини, что так долго
hilkaveta: никак не могла в ошибке разобраться

Ответы

Ответ дал: hilkaveta
0

Відповідь:

import random

print("ВАС ВІТАЄ ГРА КАМІНЬ - НОЖИЦІ - ПАПІР.")

name = input("Як я можу до Вас звертатися? ")

print("ПРИЙНЯТО. ГРА ПОЧАЛАСЯ!")

choices = ["камінь", "ножиці", "папір"]

while True:

 player = input(f"{name}, ваш хід: ")

 print("Компʼютер робить свій хід...")

 computer = choices[random.randint(0, 2)]

 if player.lower() == computer:

   print('\033[34mНІЧИЯ!\033[0m')

 elif (player.lower() == "камінь" and computer == "ножиці") or(player.lower() == "ножиці" and computer == "папір") or (player.lower() == "папір" and computer == "камінь"):

   print('\033[32mСУПЕР! ВИ ПЕРЕМОГЛИ!\033[0m')

 else:

   print(f"\033[31mНАЖАЛЬ, КОМПʼЮТЕР ПЕРЕМІГ, ВІН ОБРАВ {computer.upper()}. СПРОБУЙТЕ ЩЕ РАЗ.\033[0m")

 yesorno = input(f"{name}, чи бажаєте Ви продовжити гру? (так/ні): ")

 if yesorno.lower() == "так":

     print('ЧУДОВО!')

     continue

 else:

     print("ШКОДА. ДО ЗУСТРІЧІ!")

     break

Пояснення:

Використовую тут такі методи input, print, random.randint, lower() і тд, цикли (if, elif else), а також команди continue і break. Повідомте, якщо потрібно щось пояснити.

Вас заинтересует