Вопрос задан 21.11.2023 в 17:39. Предмет Информатика. Спрашивает Шельомин Лёша.

Python. Задание: Игра в "Быки и коровы" Описание задачи: Вы создаете игру в "Быки и коровы". Это

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

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Перевезенцев Никита.

Объяснение:

  • Ваш пример работы программы неверный. Когда вы загадали число 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} корова(-ов)')

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример кода на Python для игры "Быки и коровы", который удовлетворяет всем указанным требованиям:

```python import random

def generate_secret_number(): """Генерация случайного четырехзначного числа""" digits = list(range(10)) random.shuffle(digits) secret_number = ''.join(str(i) for i in digits[:4]) return secret_number

def get_user_guess(): """Получение догадки пользователя""" while True: guess = input("Введите вашу догадку (четырехзначное число): ") if guess.isdigit() and len(guess) == 4: return guess else: print("Пожалуйста, введите четырехзначное число.")

def check_guess(secret, guess): """Проверка догадки и подсчет быков и коров""" bulls = 0 cows = 0 for i in range(len(secret)): if secret[i] == guess[i]: bulls += 1 elif guess[i] in secret: cows += 1 return bulls, cows

def play_game(): """Основная функция игры""" print("Добро пожаловать в игру 'Быки и коровы'!") while True: secret_number = generate_secret_number() print("Я загадал случайное четырехзначное число. Попробуйте угадать его.")

attempts = 0 while True: user_guess = get_user_guess() bulls, cows = check_guess(secret_number, user_guess) print(f"Ваша догадка: {user_guess} — {bulls} быков, {cows} коров")

if bulls == 4: print("Поздравляю! Вы угадали число!") break

attempts += 1

play_again = input("Хотите начать новую игру? (да / нет): ") if play_again.lower() != 'да': print("До свидания!") break

if __name__ == "__main__": play_game() ```

Этот код создает игру "Быки и коровы" на Python, где компьютер загадывает случайное четырехзначное число, а игрок пытается его угадать. Программа проверяет каждую попытку пользователя, сообщает количество быков и коров после каждой попытки, и завершается, когда игрок угадывает число. Также предоставляется возможность начать новую игру или завершить текущую.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос