Как добавить возможность игры заново в игру Python junior? После угадывания числа пользователем, появляется сообщение

  • 62
Как добавить возможность игры заново в игру Python junior? После угадывания числа пользователем, появляется сообщение "Хотите сыграть заново? (да или нет)". Если пользователь выбирает "да", игра начинается заново, если выбирает "нет", то игра завершается. Код:

python
import random
number = random.randint(1, 20)
#print(number)
userguess = 0
score = 3
i = 0
print("У вас есть 3 попытки")
while userguess != number:
userguess = int(input("Введите число от 1 до 20: "))
i += 1
print("У вас осталось " + str(score - 1) + " попыток")
if userguess < number
Rodion
4
Для добавления возможности игры заново в игру "Python junior" после угадывания числа пользователем, нужно внести следующие изменения в код:

python
import random

def play_game():
number = random.randint(1, 20)
userguess = 0
score = 3
i = 0
print("У вас есть 3 попытки")

while userguess != number:
userguess = int(input("Введите число от 1 до 20: "))
i += 1
print("У вас осталось " + str(score - 1) + " попыток")

if userguess < number:
print("Загаданное число больше!")
elif userguess > number:
print("Загаданное число меньше!")
else:
print("Вы угадали число!")

score -= 1

if score == 0:
print("У вас закончились попытки!")
break

play_again = input("Хотите сыграть заново? (да или нет): ")

if play_again.lower() == "да":
play_game()
else:
print("Игра завершена.")

play_game()


Давайте разберем пошаговое решение.

1. В начале программы объявляется функция `play_game()`, которую мы вызываем в самом конце, чтобы начать игру.

2. Внутри функции `play_game()` создается переменная `number`, которая генерирует случайное число от 1 до 20.

3. Затем мы инициализируем переменные `userguess` (для хранения попыток пользователя), `score` (для отслеживания количества оставшихся попыток) и `i` (для отслеживания общего количества попыток).

4. Выводится сообщение "У вас есть 3 попытки".

5. Запускается цикл `while`, который будет выполняться, пока пользователь не угадает число. Внутри цикла пользователь вводит число с помощью функции `int(input("Введите число от 1 до 20: "))`.

6. Проверяем, является ли введенное число меньше или больше загаданного числа с помощью условных операторов `if-elif-else` и выводим соответствующие сообщения.

7. Уменьшаем количество оставшихся попыток на 1 с помощью `score -= 1`.

8. Проверяем, закончились ли попытки (`score == 0`). Если да, выводим сообщение "У вас закончились попытки!" и прерываем цикл.

9. После окончания цикла приглашаем пользователя сыграть заново или завершить игру с помощью вопроса `play_again = input("Хотите сыграть заново? (да или нет): ")`.

10. Если пользователь хочет сыграть заново (`play_again.lower() == "да"`), вызываем функцию `play_game()` рекурсивно, чтобы начать новую игру.

11. Если пользователь не хочет играть заново, выводим сообщение "Игра завершена."

Теперь программа позволит пользователю играть заново после угадывания числа или завершить игру, если он не хочет играть.