Python. Условная инструкция
Условная инструкция if позволяет выполнить какую-либо другую инструкция или блок инструкций в зависимости от выполнения условия. У этой инструкции несколько форм, начнем с самой простой:
if <Условие>:
<Инструкция 1>
Отступ в строке с инстукцией, которую надо выполнить, обязателен. Если надо выполнить несколько инструкций, то все они должны быть строго с одинаковыми отступами. Окончание блока инструкции if указывается отсутствием отступа для инструкции, следующей за ней.
В условии может быть указано любое выражение, результатом которого является значением логического типа данных, т.е. которое может принимать только два значения: True или False. Значение логического типа являются результатом операторов сравнения, которые перечислены в таблице:
Оператор | Операция |
== | Равно |
!= | Не равно |
< | Меньше |
<= | Меньше или равно |
> | Больше |
>= | Больше или равно |
in | Принадлежность |
Например, программа вывода, если число, введенное пользователем, является положительным:
a = int(input())
if a > 0:
print('Число положительное')
Также в условиях можно использовать логические операции:
Оператор | Операция |
not | Логическое отрицание |
and | Логическое умножение |
or | Логическое сложение |
Усложним условие из предыдущего примера, строка будет напечатана, если число положительное и четное:
a = int(input())
if a > 0 and a % 2 == 0:
print('Число положительное и четное')
Другая форма условной инструкции:
if <Условие>:
<Инструкция 1>
else:
<Инструкция 2>
При такой форме Инструкция 1 выполнится, если в условии выражение принимает значение True, в противном случае выполнится Инструкция 2.
Выведем является ли число, введенное пользователем, четным или нечетным:
a = int(input())
if a % 2 == 0:
print('Число четное')
else:
print('Число нечетное')
Если условий больше, чем одно, то применяется следующая форма условной инструкции:
if <Условие 1>:
<Инструкция 1>
elif <Условие 2>:
<Инструкция 2>
else:
<Инструкция 3>
Инструкция 1 будет выполнена, если в Условие 1 выражение принимает значение True, иначе, если в Условии 2 выражение принимает значение True, то будет выполнена Инструкция 2. Если ни одно из условий не является истинным, то будет выполнена Инструкция 3.
Например, пользователь вводит число, программа выводит является ли число положительным, отрицательным или оно равно нулю:
a = int(input())
if a > 0:
print('Число положительное')
elif a < 0:
print('Число отрицательное')
else:
print('Число равно нулю')
Задачи для самостоятельного решения
-
Пользователь вводит два целых числа. Если первое число меньше второго, то вывести сумму чисел, иначе - разность первого и второго.
-
Пользователь вводит число (дальность выстрела). Если число в интервале от 28 до 30, то вывести "Попал", иначе "Не попал".
-
Пользователь вводит число (дальность выстрела). Если число в интервале от 28 до 30, то вывести "Попал", если больше 30 - "Перелет", если меньше 28, но больше 0 - "Недолет", если 0 или меньше - "Не бей по своим".
-
Пользователь вводит год. Вывести сообщение, является ли год високосным.
-
Пользователь вводит коэффициенты a,b,c квадратного уравнения ax2 + bx + c = 0. Вывести корни этого уравнения или сообщение, что их нет. Отдельно рассмотреть, когда корни совпадают.
-
Пользователь вводит число, арифметическую операцию (Знаки + - * /) и второе число. Вывести результат.
-
Пользователь вводит координаты x и y точки на числовой плоскости. Вывести номер четверти числовой плоскости, которой принадлежит точка.
-
Пользователь вводит длины сторон треугольника, Если треугольник существует, то определить равносторонний, равнобедренный или разносторонний этот треугольник.