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

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

Показать ответ
Ответ:
EvelinaKPACABA
EvelinaKPACABA
30.05.2023 18:15

Відповідь:Привіт! Ось приклад реалізації гри в "Бики і Корови" за вказаними вимогами:

import random

def generate_number():

   """

   Генерує випадкове чотиризначне число.

   """

   digits = list(range(10))

   random.shuffle(digits)

   number = digits[:4]

   return number

def validate_input(guess):

   """

   Перевіряє, чи введено коректне чотиризначне число.

   """

   if len(guess) != 4 or not guess.isdigit():

       return False

   return True

def count_bulls_and_cows(secret_number, guess):

   """

   Порівнює загадане число з введеним і підраховує кількість "биків" і "корів".

   """

   bulls = 0

   cows = 0

   for i in range(4):

       if secret_number[i] == int(guess[i]):

           bulls += 1

       elif int(guess[i]) in secret_number:

           cows += 1

   return bulls, cows

def play_game():

   """

   Запускає гру в "Бики і Корови".

   """

   secret_number = generate_number()

   attempts = 0

   while True:

       guess = input("Введіть вашу догадку (чотиризначне число): ")

       if not validate_input(guess):

           print("Некоректний ввід. Будь ласка, введіть чотиризначне число.")

           continue

       bulls, cows = count_bulls_and_cows(secret_number, guess)

       attempts += 1

       print(f"Бики: {bulls}, Корови: {cows}")

       if bulls == 4:

           print(f"Ви вгадали число '{''.join(map(str, secret_number))}' за {attempts} спроб!")

           break

   play_again = input("Бажаєте зіграти знову? (так/ні): ")

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

       play_game()

   else:

       print("Дякуємо за гру!")

# Запуск гри

play_game()

Ця програма генерує випадкове чотиризначне число, валідує введення користувача, порівнює числа та виводить кількість "биків" та "корів" після кожної спроби. Вона також надає можливість гравцю грати знову або закінчувати гру.

Будь ласка, зверніть увагу, що цей код є лише прикладом і може бути модифікований або розширений залежно від вашої специфікації та потреб.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота