profile
Размещено 2 года назад по предмету Информатика от wolerdm

Помогите пожалуйста
написание компьютерной игры Камень-ножницы-бумага

Задание: Пользователю на выбор предлагается ввести камень, ножницы или бумагу. Противником пользователя является компьютер. Поэтому далее вам необходимо сгенерировать рандомный выбор компьютера - так же камень, ножницы или бумагу. После этого в соответствии с известными правилами игры определяется победитель, о чем выводится сообщение в консоль.

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

Подсказки:
1. Бесконечную игру можно реализовать с помощью бесконечного цикла вида
while True:
Из него можно выйти с помощью простой команды
break

2. Для реализации рандомного выбора компьютера вам понадобятся функции из особого модуля. Чтобы их подключить, в начале программы необходимо написать
import random

Выбор рандомного камня-ножниц-бумаги можно реализовать с помощью двух функций из этого модуля - random.choice(list) и random.uniform(start,end). Они делают немного разные вещи, но обе подойдут для нашего случай - тут уже на ваш вкус. Кратко объясним их смысл:

✅random.choice(list) - возвращает случайное значение из списка list.
✅random.uniform(start,end) - возвращает случайное дробное число в диапазоне от start до end

  1. Ответ на вопрос
    Ответ на вопрос дан mathgenius

    import sys

    from random import choice

    def rock_paper_scissors():

       dict_wins ={

       'камень': 'ножницы',

       'ножницы': 'бумага',

       'бумага': 'камень'

       }

       human_choice = input('Ваш ход: ')

       if human_choice not in dict_wins.values():

           print('Неверный ход, попробуйте снова!')

           rock_paper_scissors()

       ii_choice = choice(list(dict_wins.values()))

       print('Ход компьютера:',ii_choice)

       if ii_choice == human_choice:

           print('Ничья!')

       elif ii_choice == dict_wins[human_choice]:

           print('Вы выйграли!')

       else:

           print('Вы проиграли, может в следующий раз повезет больше.')

       question()

    def question():

       answer = input('Не хотите сыграть еще раз? (да/нет)n')

       if answer not in ['да','нет']:

           print('Я вас не понимаю, попробуйте ответить снова!')

           question()

       elif answer == 'да':

           rock_paper_scissors()

       else:

           print('Cпасибо за игру!')

           sys.exit()

    rock_paper_scissors()

    question()

    1. Ответ на вопрос
      Ответ на вопрос дан mathgenius
      Cпециально показал как можно обойтись без вечного цикла while
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.