Мини-игры на условиях: угадай число и чёт-нечет

Собираем настоящие мини-игры на условиях: «угадай число» и «чёт или нечет». Программа становится умной!

Остаток от деления (знак %) — это то, что «не разделилось нацело»; с его помощью легко проверить чётность числа.

Игра «Угадай число»

Соберём классическую игру. Компьютер загадал число, а игрок пытается угадать. Программа должна подсказать: загаданное больше или меньше? Тут нужны сразу несколько условий. Для подсказок используем уже знакомые знаки < и >.

secret = 7
guess = 5
if guess == secret:
    print("Угадал!")
else:
    if guess < secret:
        print("Загаданное число больше")
    else:
        print("Загаданное число меньше")

Вывод:

Загаданное число больше

Читаем как историю: игрок назвал 5, загадано 7. Сначала проверяем «угадал?» (5 == 7) — нет. Идём в else и там новое условие: «названное меньше загаданного?» (5 < 7) — да! Печатаем подсказку «Загаданное число больше». Поменяй guess на 7 — и увидишь «Угадал!».

Заметил? Внутри else спрятался ещё один if. Условия можно вкладывать друг в друга, как матрёшки, — так программа принимает более сложные решения.

Чёт или нечет: знакомимся с остатком

Как программа узнаёт, чётное число или нечётное? У неё есть хитрый инструмент — остаток от деления, знак % (он называется «процент», но тут работает иначе). 10 % 2 — это остаток от деления 10 на 2. Десять делится на два ровно, остаток 0. А 7 % 2 даст остаток 1, потому что семь на два ровно не делится.

Правило простое: если остаток от деления на 2 равен нулю — число чётное. Проверим:

number = 8
if number % 2 == 0:
    print(number, "- чётное")
else:
    print(number, "- нечётное")

Вывод:

8 - чётное

8 делится на 2 без остатка (8 % 2 равно 0), поэтому условие верно — печатается «чётное». Замени число на 7 — и программа честно скажет «нечётное».

Попробуй сам

Эта программа проверяет, можно ли поделить конфеты поровну между двумя друзьями (то есть чётное ли число конфет). Запусти, потом поменяй число конфет.

konfety = 6
if konfety % 2 == 0:
    print("Можно разделить поровну!")
else:
    print("Одна конфета лишняя")

Вывод:

Можно разделить поровну!

Частые ошибки

  • Перепутать % и обычное деление. Знак % даёт остаток, а не результат деления. 7 % 2 — это 1 (остаток), а не 3.5.
  • Запутаться в матрёшке из if. Когда условие внутри условия, следи за отступами: каждый вложенный if сдвигается ещё чуть правее. Отступы — твоя карта.

Что мы узнали

  • Условия можно вкладывать друг в друга, чтобы принимать сложные решения (игра «Угадай число»).
  • Знак % даёт остаток от деления.
  • Число чётное, если остаток от деления на 2 равен 0.
Проверьте себя
1. Чему равно 8 % 2 (остаток от деления 8 на 2)?
A4
B0
C2
D1
2. Как проверить, что число чётное?
AЕсли оно больше 10
BЕсли остаток от деления на 2 равен 0 (число % 2 == 0)
CЕсли оно меньше 0
DЕсли в нём есть цифра 2
3. Что значит, что условия можно «вкладывать» друг в друга?
AОдин if может стоять внутри другого if или else
BУсловия нельзя соединять
CВсе условия должны быть одинаковыми
DУсловие можно написать только один раз

Закрепите практикой

Задачи с автоматической проверкой — решайте прямо здесь, не уходя из учебника.

Поддержать проект