P
pro·school.ru
Каталог школ

Ветвления и условный оператор

💻 Информатика · 10 класс

Что такое ветвление

Ветвление — это алгоритмическая конструкция, при которой ход выполнения программы зависит от истинности некоторого условия. Если условие выполнено, программа идёт по одной ветви, иначе — по другой. Реализуется ветвление условным оператором.

В отличие от линейного алгоритма, где команды идут строго по порядку, ветвление позволяет программе «принимать решения»: выводить разный результат для разных входных данных.

Формы условного оператора

Условный оператор бывает в двух формах: неполной (выполнить действие только при истинном условии) и полной (выбор из двух ветвей). В Python:

if x > 0:
print("положительное")
else:
print("неположительное")

Логические условия

Условие — это логическое выражение, дающее «истину» или «ложь». В нём используют операции сравнения и логические связки.

ОперацияСмысл
==равно
!=не равно
andи (оба истинны)
orили (хотя бы одно)
notотрицание

Вложенные и каскадные ветвления

Когда вариантов больше двух, применяют каскад if-elif-else. Разберём определение знака числа:

if x > 0:
print("плюс")
elif x < 0:
print("минус")
else:
print("ноль")

Проверки идут сверху вниз; как только одно условие истинно, остальные ветви пропускаются. Это удобнее, чем несколько независимых if, и работает быстрее.

Вложенные ветвления

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

if a > b:
if a > c: m = a
else: m = c
else:
if b > c: m = b
else: m = c

Глубокую вложенность часто можно упростить, объединив условия логическими связками. Например, проверку «число в диапазоне от 1 до 10» записывают одним условием 1 <= x and x <= 10 вместо двух вложенных if.

Сложные условия

Логические связки позволяют объединять несколько проверок. Условие «год високосный» включает делимость на 4, кроме делящихся на 100, но включая делящиеся на 400 — здесь без связок and, or и not не обойтись. Чтобы порядок вычислений был верным, части сложного условия берут в скобки.

Частые ошибки. Путаница = (присваивание) и == (сравнение). Забытое двоеточие или неверный отступ в Python. Перекрывающиеся условия, когда несколько ветвей могут сработать в нелогичном порядке. Лишние скобки или их нехватка в сложных логических выражениях.

Кратко о главном

  • Ветвление выбирает действие в зависимости от условия.
  • Неполная форма — только if, полная — if-else.
  • Несколько вариантов оформляют каскадом if-elif-else.
  • Условие — логическое выражение со сравнениями и связками and, or, not.