Практическая 1 · Python
Игра «Угадай число»
Компьютер загадает число от 1 до 50. У вас пять попыток, а после каждого неверного ответа — подсказка.
Условия игры
- Компьютер выбирает случайное целое число от 1 до 50, включая 1 и 50.
- У игрока 5 попыток.
- Если ответ неверный, программа подсказывает: загаданное число больше или меньше.
- Буквы и числа вне диапазона не расходуют попытку.
- При победе появляется поздравление, а при проигрыше — загаданное число.
Добавьте код игры
- Вернитесь в свой блокнот. Под приветствием выберите пустую ячейку типа Code.
- Перенесите в неё код игры ниже.
- Сохраните отступы в начале строк. Весь код игры должен быть в одной ячейке.
Строки с
# — комментарии. Прочитайте их: они объясняют, что делает программа.Python · одна ячейка с игрой
# random помогает компьютеру выбрать случайное число.
import random
# У игрока пять попыток. Обе границы диапазона входят в игру.
attempts = 5
secret = random.randint(1, 50)
print(f"Я загадал число от 1 до 50. У вас {attempts} попыток!")
# Повторяем вопрос, пока есть попытки.
while attempts > 0:
try:
# input получает текст, а int превращает его в целое число.
guess = int(input("Какое число я загадал? "))
except ValueError:
print("Введите целое число, например 25.")
continue # Возвращаемся к вопросу, не тратя попытку.
if guess < 1 or guess > 50:
print("Нужно число от 1 до 50.")
continue
# Только подходящее число расходует попытку.
attempts = attempts - 1
if guess == secret:
print("Поздравляем! Вы угадали число!")
break # Победа — выходим из цикла.
elif guess < secret:
print("Загаданное число больше.")
else:
print("Загаданное число меньше.")
print("Осталось попыток:", attempts)
# Если число так и не угадано, показываем ответ.
if guess != secret:
print("Попытки закончились. Загаданное число:", secret)
print("Чтобы сыграть снова, запустите эту ячейку ещё раз.")Запустите и сыграйте
- Выделите ячейку с игрой и нажмите Shift + Enter.
- Под кодом появится сообщение о пяти попытках и поле «Какое число я загадал?».
- Введите, например,
25в это поле и нажмите Enter. - Прочитайте подсказку. Введите новое число и продолжайте игру до победы или окончания попыток.
Ответ вводится в поле под кодом. Метка
[*] означает, что ячейка ещё работает. Если есть поле ввода, программа ждёт вашего ответа.
Как сыграть ещё раз
Дождитесь окончания игры, выберите ту же ячейку с кодом и снова нажмите Shift + Enter. Компьютер загадает новое число.
Разберите код
| Команда | Что делает |
|---|---|
random.randint(1, 50) | Выбирает случайное число от 1 до 50. |
input() и int() | Получают ответ как текст и превращают его в целое число. |
while attempts > 0 | Повторяет вопрос, пока есть попытки. |
try / except ValueError | Помогают объяснить ошибку, если вместо числа введены буквы. |
continue | Возвращает программу к началу цикла. |
if / elif / else | Сравнивают ответ с секретным числом. |
break | Завершает цикл, когда число угадано. |
Проверьте и измените игру
- При вводе
приветпрограмма просит целое число. - При вводе
51появляется сообщение о диапазоне 1–50. - После неверного подходящего ответа число попыток уменьшается на один.
- Игра завершается поздравлением или сообщением с ответом.
Ваше изменение
Замените attempts = 5 на attempts = 7, выполните ячейку заново и проверьте, что попыток стало больше. Затем придумайте своё поздравление.