Хочу сделать игру «угадай число» как первый проект — как её устроить?
Все советуют новичкам сделать игру «угадай число»: компьютер загадывает число, а я угадываю, и он говорит «больше» или «меньше». Звучит понятно, но я не понимаю, как заставить программу повторять вопрос, пока я не угадаю. Помогите собрать.
2 ответа
Тебе нужен цикл, который крутится, пока число не угадано. Вот вся игра:
import random
secret = random.randint(1, 100)
tries = 0
while True:
guess = int(input('Твоё число: '))
tries += 1
if guess < secret:
print('Больше')
elif guess > secret:
print('Меньше')
else:
print(f'Угадал за {tries} попыток!')
break
Логика: random.randint(1, 100) загадывает число один раз, до цикла. Внутри while True спрашиваем попытку, сравниваем и подсказываем. break выходит из цикла, когда угадали.
Счётчик tries — приятный бонус, который превращает скучную программу в настоящую игру. Потом можешь добавить ограничение на число попыток.
Маленький, но частый баг: не ставь secret = random.randint(...) ВНУТРЬ цикла — иначе компьютер будет загадывать новое число на каждой попытке, и угадать станет невозможно. Загадывать нужно один раз, до while.