
Помогите пожалуйста на python обязательно как написано написание компьютерной игры
Камень-ножницы-бумага Задание: Пользователю на выбор предлагается ввести камень, ножницы или бумагу. Противником пользователя является компьютер. Поэтому далее вам необходимо сгенерировать рандомный выбор компьютера - так же камень, ножницы или бумагу. После этого в соответствии с известными правилами игры определяется победитель, о чем выводится сообщение в консоль. После первого раунда программа НЕ завершается, а спрашивает у пользователя, хочет ли он сыграть еще. Если он соглашается - то начинается новый раунд. Если нет - то программа завершается. Соответственно, игра может продолжаться до тех пор, пока пользователь не откажется ее продолжать. Подсказки: 1. Бесконечную игру можно реализовать с помощью бесконечного цикла вида while True: Из него можно выйти с помощью простой команды break 2. Для реализации рандомного выбора компьютера вам понадобятся функции из особого модуля. Чтобы их подключить, в начале программы необходимо написать import random Выбор рандомного камня-ножниц-бумаги можно реализовать с помощью двух функций из этого модуля - random.choice(list) и random.uniform(start,end). Они делают немного разные вещи, но обе подойдут для нашего случай - тут уже на ваш вкус. Кратко объясним их смысл: ✅random.choice(list) - возвращает случайное значение из списка list. ✅random.uniform(start,end) - возвращает случайное дробное число в диапазоне от start до end

Ответы на вопрос

import random
while True:
try:
t = int(
input('Выберите ваш ход:\n1 - Камень\n2 - Ножницы\n3 - Бумага\n\n')
)
if t not in (1, 2, 3):
raise ValueError
except:
print('\033[1;31mНеверный ввод\033[0m')
continue
n = random.choice([
'Камень',
'Ножницы',
'Бумага'
])
if (t == 1 and n == 'Бумага') or \
(t == 2 and n == 'Камень') or \
(t == 3 and n == 'Ножницы'):
print(f'Ход компьютера: \033[1;33m{n}\n\033[1;31mВы проиграли :(\033[0m')
else:
print(f'Ход компьютера: \033[1;33m{n}\n\033[1;32mВы выиграли!\033[0m')
while True:
again = input('Хотите сыграть ещё? (Да/Нет)\n')
if again.lower() not in ('да', 'нет'):
print('\033[1;31mНеверный ввод\033[0m')
else:
break
if again.lower() == 'нет':
print('\033[1;31mИгра завершена.\033[0m')
break



Конечно, вот пример кода на Python для игры "Камень-ножницы-бумага" с использованием бесконечного цикла и модуля `random`:
```python import random
while True: # Ввод выбора пользователя user_choice = input("Введите камень, ножницы или бумагу: ").lower()
# Генерация случайного выбора компьютера choices = ['камень', 'ножницы', 'бумага'] computer_choice = random.choice(choices)
# Вывод выборов print(f"Вы выбрали: {user_choice}") print(f"Компьютер выбрал: {computer_choice}")
# Проверка победителя if user_choice == computer_choice: print("Ничья!") elif ( (user_choice == 'камень' and computer_choice == 'ножницы') or (user_choice == 'ножницы' and computer_choice == 'бумага') or (user_choice == 'бумага' and computer_choice == 'камень') ): print("Вы победили!") else: print("Вы проиграли!")
# Проверка желания пользователя играть еще play_again = input("Хотите сыграть еще? (да/нет): ").lower() if play_again != 'да': break # Выход из бесконечного цикла, если пользователь не хочет играть еще
# Конец программы print("Спасибо за игру!") ```
Этот код реализует бесконечный цикл, в котором пользователь вводит свой выбор, компьютер генерирует случайный выбор, определяется победитель, и затем спрашивается у пользователя, хочет ли он сыграть еще. Если пользователь отказывается, программа выходит из цикла и завершается.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili