Оператор ветвления
Оператор ветвления позволяет программе выбрать, какие команды выполнить, в зависимости от значения условия. Если условие истинно, выполняется одна ветвь, иначе — другая или ни одна.
if, если условие истинно; в конструкции if ... else при ложном условии выполняется блок else.Оператор ветвления является одной из управляющих конструкций программы. Условие — это выражение, результатом которого может быть только истина или ложь. Например, сравнение \(x > 0\) проверяет, является ли число положительным. В зависимости от результата программа продолжает работу по разным ветвям.
В записи квадратные скобки означают необязательную часть. Поэтому различают неполное ветвление (if без else) и полное ветвление (if ... else). Внутри каждой ветви может находиться одна команда или несколько команд, образующих блок. В Python границы блока задаются отступами, а в Паскале и C++ — обычно специальными ключевыми словами или фигурными скобками.
Программа сравнивает число с нулём и сообщает знак результата.
1x = -3 2if x >= 0: 3 print("неотрицательное") 4else: 5 print("отрицательное")
Две последовательные конструкции if могут выполнить обе ветви, если оба условия истинны. В конструкции if ... elif ... else выбирается только одна ветвь: первая из ветвей с истинным условием. Поэтому при выборе единственного варианта часто используют именно связанную цепочку условий.
Что напечатает программа, если x = 5?
x >= 0.x = 5 условие x >= 0 истинно, поэтому выполняется первая ветвь.if ... else выполняется только одна из двух ветвей.Для проверки работы ветвления полезно рассматривать значения на границе условия и по обе стороны от неё. Такой подход связан с граничными значениями и помогает обнаружить ошибки в знаках сравнения: например, разницу между \(x > 0\) и \(x \ge 0\).
Главное
- Оператор ветвления выбирает дальнейшие команды по результату условия.
ifзадаёт основную ветвь,else— альтернативную; в цепочкеif ... elif ... elseвыполняется только одна подходящая ветвь.- Тщательно проверяйте операции сравнения и граничные значения условия.