Найти в Дзене
Информатика

Как научить код принимать решения за тебя? Разбираемif-else в Python 🤖

Представь: ты запускаешь ютуб, и алгоритм сам решает — показать тебе ролик с читами для майнкрафта или новый клип любимого исполнителя. Магия? Нет, просто условный оператор! Каждая программа — это цепочка команд. Обычно компьютер идёт строго сверху вниз. Но иногда нужно выбрать, куда идти дальше. Пример из жизни: Вот это «если-то-иначе» и есть разветвляющийся алгоритм. В Python он пишется так: if дождь:
взять_зонт()
else:
идти_так() Просто? Да! Но дьявол в деталях 😈 Допустим, тебе нужно проверить, чётное ли число. Как это сделать? x = int(input('Введи число: '))
if x % 2 == 0:
print(f'{x} - чётное')
else:
print(f'{x} - нечётное') Что тут происходит? 💡 Фишка: символ % — это остаток от деления. Запомни, он везде пригодится! Иногда нужно что-то сделать только при выполнении условия, а если условие ложно — просто идти дальше. Сценарий: ты играешь в шутер. Если нашёл аптечку — подобрал. Если нет — просто бежишь дальше. Не нужно каждый раз что-то делать во втором случае,
Оглавление
Как научить код принимать решения?
Как научить код принимать решения?

Представь: ты запускаешь ютуб, и алгоритм сам решает — показать тебе ролик с читами для майнкрафта или новый клип любимого исполнителя. Магия? Нет, просто условный оператор!

Что вообще происходит?

Каждая программа — это цепочка команд. Обычно компьютер идёт строго сверху вниз. Но иногда нужно выбрать, куда идти дальше.

Пример из жизни:

  • Если на улице дождь → возьми зонт
  • Если нет → иди так

Вот это «если-то-иначе» и есть разветвляющийся алгоритм. В Python он пишется так:

if дождь:
взять_зонт()
else:
идти_так()

Просто? Да! Но дьявол в деталях 😈

if-else: твой первый выбор в коде

if-else
if-else

Допустим, тебе нужно проверить, чётное ли число. Как это сделать?

x = int(input('Введи число: '))

if x % 2 == 0:
print(f'{x} - чётное')
else:
print(f'{x} - нечётное')

Что тут происходит?

  • x % 2 — остаток от деления на 2
  • Если остаток 0 → чётное
  • Если нет → нечётное

💡 Фишка: символ % — это остаток от деления. Запомни, он везде пригодится!

А если else не нужен? 🤔

Иногда нужно что-то сделать только при выполнении условия, а если условие ложно — просто идти дальше.

Сценарий: ты играешь в шутер. Если нашёл аптечку — подобрал. Если нет — просто бежишь дальше. Не нужно каждый раз что-то делать во втором случае, правда?

if нашёл_аптечку:
подобрать()
# идём дальше

Реальный пример: найти максимум из трёх чисел

a, b, c = 5, 12, 8
максимум = a

if b > максимум:
максимум = b

if c > максимум:
максимум = c

print(максимум) # 12

Просто берём первое число и постепенно заменяем, если находим больше. Элегантно!

elif — когда вариантов много
elif — когда вариантов много

elif — когда вариантов много

Представь: ты пишешь бота для оценок.

  • 90+ баллов → 5
  • 75-89 → 4
  • 60-74 → 3
  • Меньше 60 → 2

Можно написать 4 отдельных if, но это неэффективно. Лучше так:

балл = int(input('Сколько баллов набрал? '))

if балл >= 90:
print('Красавчик! Пятёрка 🔥')
elif балл >= 75:
print('Четвёрка — хорошо!')
elif балл >= 60:
print('Тройка... ну хоть не два')
else:
print('Эх, надо подучить 😬')

Почему так круто?
Когда условие срабатывает — остальные просто
пропускаются. Код читается как история, а не как куча развилок.

Вложенные условия: выбор в выборе 🎯

Есть подписка?
Есть подписка?

Иногда после одной проверки нужна ещё одна.

Сценарий из жизни:

  • Если есть интернет: Если есть подписка → смотри видос в HD
    Иначе → смотри с рекламой
  • Иначе → иди на улицу 😂
if есть_интернет:
if есть_подписка:
смотреть_HD()
else:
смотреть_с_рекламой()
else:
идти_гулять()

Вот так программа думает поэтапно, как ты сам!

Практика: квадратное уравнение за 15 строк

Помнишь из алгебры ax² + bx + c = 0? Давай заставим Python решать его автоматически!

a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))

d = b**2 - 4*a*c # дискриминант

if d < 0:
print('Корней нет 😢')
elif d == 0:
x = -b / (2*a)
print(f'Один корень: {x:.2f}')
else:
x1 = (-b + d**0.5) / (2*a)
x2 = (-b - d**0.5) / (2*a)
print(f'Два корня: {x1:.2f} и {x2:.2f}')

15 строк — и готов калькулятор для домашки! Теперь понимаешь, почему программисты ленивые? 😎

Теперь понимаешь, почему программисты ленивые?
Теперь понимаешь, почему программисты ленивые?

Три важные вещи про if в Python

1️⃣ Отступы — это серьёзно!

В других языках можно как угодно. В Python отступ = закон. Без него код просто не запустится.

# ❌ Так нельзя
if x > 0:
print('положительное')

# ✅ Так надо
if x > 0:
print('положительное')

2️⃣ Двоеточие после условия

Забыл двоеточие — получишь ошибку. Всегда пиши:

if условие:

3️⃣ Сравнение — это ==, а не =

  • x = 5 — присваивание
  • x == 5 — проверка

Путаешь → баги гарантированы!

Логические операции: and, or, not

Хочешь проверить несколько условий сразу?

and (И) — оба должны быть правдой:

if возраст >= 14 and есть_паспорт:
print('Можно регистрироваться')

or (ИЛИ) — хотя бы одно правда:

if дождь or снег:
print('Бери зонт!')

not (НЕ) — переворачивает значение:

if not сделал_домашку:
print('Сделай уже!')

Челлендж для тебя 🎮

Попробуй написать программу для игры «Камень, ножницы, бумага»:

  1. Ты вводишь свой выбор
  2. Компьютер делает случайный (подсказка: import random)
  3. Программа определяет победителя

Вот тебе скелет:

import random

твой_выбор = input('Камень, ножницы или бумага? ')
выбор_компа = random.choice(['камень', 'ножницы', 'бумага'])

if твой_выбор == выбор_компа:
print('Ничья!')
elif ???: # дальше — твоя логика!
...

Справишься? 💪

Зачем это всё нужно?

if-else — это основа ВСЕГО программирования:

  • 🎮 Игры: «если здоровье = 0 → конец игры»
  • 📱 Приложения: «если пароль верный → войти»
  • 🤖 Боты: «если слово "привет" → ответить»
  • 🌐 Сайты: «если возраст < 18 → показать детскую версию»

Без условий программы были бы тупыми линейными списками команд. А с ними — они думают и принимают решения!

Что запомнить

✅ if-else — когда нужно выбрать одно ИЛИ другое
✅ if без else — когда действие нужно только при истинном условии
✅ elif — когда вариантов больше двух
✅ Отступы обязательны (это Python, детка!)
✅ == для сравнения, = для присваивания
✅ and, or, not — для сложных условий

Что дальше?

Теперь ты знаешь, как заставить код выбирать. Дальше будет ещё круче — циклы! Это когда программа повторяет действие 1000 раз за секунду, пока ты даже моргнуть не успел 😎

А пока — иди тренируйся! Открой Python и попробуй написать:

  1. Калькулятор оценок
  2. Советчик по одежде (зависит от температуры)
  3. Игру «Угадай число»

Без практики теория — как скин в игре, который ты не используешь. Бесполезная красота!

💡 Полный учебный материал с примерами кода, иллюстрациями и практическими заданиями — на нашем сайте:

🔥
Подписывайся на канал — впереди ещё куча крутых тем: циклы, функции, работа с файлами, создание своих игр и ботов!