Предмет: Информатика, автор: addenisovih

Python. Задание: Игра в "Быки и коровы"
Описание задачи:
Вы создаете игру в "Быки и коровы". Это игра, в которой компьютер загадывает четырехзначное число, а игрок пытается угадать его. После каждой попытки компьютер сообщает, сколько быков и коров игрок получил.
Если игрок угадал цифру и ее позицию, это считается "быком". Если игрок угадал цифру, но не ее позицию, это считается "коровой".
Требования к программе:
1. Программа должна генерировать случайное четырехзначное число для каждой новой игры.
2. Игрок должен вводить свою догадку о загаданном числе.
3. Программа должна проверять, что введенное значение является четырехзначным числом.
4. Программа должна сообщать игроку, сколько быков и коров он получил после каждой попытки.
5. Программа должна завершаться, когда игрок угадывает загаданное число.
Дополнительные требования:
1. Программа должна использовать функции для логических операций, таких как проверка на четырехзначность числа, вычисление быков и коров и т.д.
2. Программа должна предоставлять пользователю возможность начать новую игру или закончить текущую игру.

Пример работы программы:
>>> Добро пожаловать в игру "Быки и коровы"!
>>> Я загадал случайное четырехзначное число. Попробуйте угадать его.
>>> Ваша догадка: 1234
>>> 2 быка, 1 корова
>>> Ваша догадка: 5678
>>> 0 быков, 0 коров
>>> Ваша догадка: 9824
>>> 4 быка! Вы выиграли!
>>> Хотите начать новую игру? (да / нет): нет
>>> До свидания!

Ответы

Автор ответа: Аноним
3

Объяснение:

  • Ваш пример работы программы неверный. Когда вы загадали число 1234, то должны были получить 1 быка и 1 корову. Когда вы загадали число 5678, то должны были получить 0 быков и 1 корову.

Код Python 3.10:

from random import randint

print('Добро пожаловать в игру "Быки и коровы"!')

game = 'да'

while game == 'да':

   num = str(randint(1000, 9999))

   print("Я загадал случайное четырехзначное число. Попробуйте угадать его.")

   attempt = True

   while attempt:

       player_num = input("Ваша догадка: ")

       bulls = 0

       cows = 0

       for i in range(4):

           if num[i] == player_num[i]:

               bulls += 1

           elif player_num[i] in num:

               cows += 1

       if bulls == 4:

           print("4 быка! Вы выиграли!")

           game = input('Хотите начать новую игру? (да / нет): ')

           attempt = False

       else:

           print(f'{bulls} быка(-ов), {cows} корова(-ов)')


addenisovih: Спасибо
Интересные вопросы
Предмет: Немецкий язык, автор: kyzmenkoliza2000
Предмет: Математика, автор: dorunkanova