Карта курса → Модуль 1 → Урок 1.3

Условия — if creeper then run

Как научить программу принимать решения.

Урок 1.3

🎣 Старт

Ты идёшь по пещере в Minecraft. Впереди моб. Что делаешь?

Ты только что выполнил четыре условия. Твой мозг делает это автоматически: оценивает ситуацию и выбирает действие. Программы работают так же — но им нужно прописать каждое условие явно.

🧠 Теория: if / else

Условие — это развилка в коде. Если что-то правда — делаем одно. Если нет — другое.

моб = "крипер"

if моб == "крипер":
    print("БЕЖИМ!")
else:
    print("Атакуем!")

Разберём по кусочкам:

elif — когда вариантов больше двух

моб = "зомби"

if моб == "крипер":
    print("БЕЖИМ!")
elif моб == "зомби":
    print("Бьём мечом")
elif моб == "скелет":
    print("Прячемся за щитом")
elif моб == "эндермен":
    print("Не смотрим в глаза")
else:
    print("Что-то неизвестное. Осторожно.")

elif — это сокращение от «else if» (иначе если). Можно ставить сколько угодно.

Операторы сравнения

ОператорЗначениеПримерРезультат
==равно5 == 5True
!=не равно5 != 3True
>больше10 > 5True
<меньше3 < 7True
>=больше или равно5 >= 5True
<=меньше или равно3 <= 2False
🧩 Квиз +10 XP
Чем отличается = от == в Python?
A Ничем, это одно и то же
B = присваивает значение, == сравнивает
C == присваивает значение, = сравнивает
D == работает только с числами

🔧 Практика

Задание 1: Классификатор мобов

В пустые поля ??? впиши команды: if (если), elif (а если) или else (иначе). Это слова, которые говорят программе, когда выполнять код.

моб = "волк"

 моб == "крипер":
    тип = "враждебный"
 моб == "волк":
    тип = "нейтральный"
:
    тип = "дружелюбный"
💡 Подсказка

Первая проверка — if. Дополнительная проверка — elif. Всё остальное — else.

✅ Решение
if моб == "крипер":
    тип = "враждебный"
elif моб == "волк":
    тип = "нейтральный"
else:
    тип = "дружелюбный"

Задание 2: Система дня и ночи

В Minecraft цикл дня = 24000 тиков. Заполни числа-границы:

тик = 14500

if тик < :
    время = "утро ☀️"
elif тик < :
    время = "день 🌞"
elif тик < :
    время = "вечер 🌅"
else:
    время = "ночь 🌙"
💡 Подсказка

Границы диапазонов: утро кончается на 6000, день — на 12000, вечер — на 18000.

✅ Решение
if тик < 6000:
    время = "утро ☀️"
elif тик < 12000:
    время = "день 🌞"
elif тик < 18000:
    время = "вечер 🌅"
else:
    время = "ночь 🌙"

🏗️ Сборка: Умная черепашка

Помнишь черепашку из урока 1? Она тупо шла вперёд. Теперь она станет умнее.

Черепашка двигается по миру и встречает разные блоки. Она умеет их определять с помощью функции что_впереди().

блок = что_впереди()

if блок == "воздух":
    вперёд()
elif блок == "руда":
    копай()
    вперёд()
elif блок == "лава":
    влево()
    вперёд()
    вправо()
    вперёд()
    вправо()
    вперёд()
    влево()
elif блок == "бедрок":
    print("Дальше нельзя")
    развернись()

Черепашка теперь реагирует на окружение, а не просто слепо выполняет команды. Это уже настоящий AI (ну, почти).

🧩 Квиз +10 XP
Что делает этот код, если моб = "крипер" и расстояние = 2?
if моб == "крипер":
    if расстояние < 3:
        print("БЕЖИМ!")
    else:
        print("Стреляем")
A "Стреляем"
B Ничего
C Ошибку
D "БЕЖИМ!"
👹 Босс: Боевой робот +100 XP

Черепашка-боец на арене. У неё здоровье = 4, моб = "скелет", есть_щит = False.

Правила:

  1. Если здоровье < 5 — всегда убегай
  2. Если крипер и близко — убегай
  3. Если зомби — атакуй мечом
  4. Если скелет и есть щит — блокируй
  5. Если скелет и нет щита — зигзаг

Что сделает правильно написанный код в этой ситуации?

A Зигзагом подбежит к скелету
B Убежит (здоровье < 5 — приоритет!)
C Блокирует щитом
D Атакует мечом

💭 Итоги

Теперь ты знаешь:

  • if/elif/else — программа может принимать решения
  • ✅ Операторы сравнения: ==, !=, >, <, >=, <=
  • ✅ Вложенные условия — дерево решений

Где это в реальном мире:

  • Спам-фильтр почты: if содержит «вы выиграли миллион» → спам
  • Автоматические двери: if датчик движения → открыть
  • Светофор: if красный → стой, elif зелёный → иди

Fun fact: Вся логика любого компьютера сводится к двум операциям: сравнение (if) и переход (goto). Буквально всё. Игры, нейросети, операционные системы — просто очень много if. 🤯

В следующем уроке: составные условия — and, or, not. Когда нужно проверить несколько вещей одновременно.

А потом: мы наконец избавимся от копипасты. Помнишь, как мы писали вперёд() пять раз подряд? Циклы решат эту проблему навсегда.