Модуль: Условный оператор


Задача

12/17

Неполный условный оператор

Теория Нажмите, чтобы прочитать/скрыть

Неполный условный оператор

Если в блоке «иначе» не надо ничего делать (например: «если в продаже есть мороженое, купи мороженое», а если нет ...), то весь блок «иначе» можно опустить и использовать сокращенную (неполную) форму условного оператора:
if условие:
   ... # что делать, если условие истинно
Операция выбора максимального из двух значений используется очень часто, поэтому в Python есть встроенная функция max, которую можно вызвать таким образом
M = max(A, B)
Есть и аналогичная функция для поиска минимального значения из двух или нескольких значений - min(). 

При выборе из двух значений в Python можно использовать и другую форму записи условного оператора, которая работает как и полная форма записи условного оператора.
M = a if a > b else b
Если необходимо выполнить несколько действий  при выполнении условия, то все действия записываются одно под другим на том же уровне сдвига:
if a > b:
  temp = a
  a = b
  b = temp
В этой программе если \(a>b\), то меняем значения переменных местами. Переменная temp - вспомогательная.
Обратите внимание на одинаковые сдвиги с левого края всех трех операторов. Это дает понять транслятору, что все три оператора выполняются при условии, что a>b.
Еще одна тонкость языка Python заключается в  операторе множественного присваивания, который облегчает обмен двух переменных. Его можно записать так:
a, b = b, a

Задача

Оформить решение задачи на поиск максимального из двух чисел можно с использованием неполной формы условного оператора.
Используя дополнительную переменную \(M\), начальное значение которой устанавливаем равным значению переменной \(a\)
Далее делаем проверку, если значение переменной \(b\) больше, чем значение переменной \(M\), то заменяем значение переменной \(M\) на значение переменной \(b\).

По такой схеме легко найти максимальное значение их трех и более чисел.