Similar presentations:
Программирование (Python). Разветвляющиеся алгоритмы. Ветвление
1. Программирование (Python)
1Программирование
(Python)
Ветвление.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
2.
Разветвляющиеся алгоритмы. Ветвление.Алгоритмы, в которых последовательность
шагов зависит от выполнения некоторых
условий, называются разветвляющимися.
Условие - это логическое выражение,
которое может содержать знаки отношений.
3.
Знаки для записи условийменьше
<
<=
больше
>
меньше или равно
>=
равно
==
больше или равно
!=
не равно
Простые условия записываются в виде равенств или
неравенств.
Примеры записи простых условий:
ПРИМЕРЫ
a!=b
a<=0
a+3*c==20
4.
Разветвляющиеся алгоритмыДля записи разветвляющихся алгоритмов
в языке Python используют
условный оператор IF – ELSE.
Оператор имеет две формы записи:
полного и неполного ветвления.
5. Выбор наибольшего из двух чисел (вар.1)
Программирование (Python), 8 класс5
Выбор наибольшего из двух чисел (вар.1)
Задача: изменить порядок действий в зависимости от
выполнения некоторого условия.
полная
форма
да
нет
ветвления
a > b?
M=a
M=b
вывод M
отступы
4 пробела!!!
К.Ю. Поляков, Е.А. Ерёмин, 2018
? Если a = b?
if a > b:
M = a
else:
M = b
http://kpolyakov.spb.ru
6. Вариант 1. Программа (полное ветвление)
Программирование (Python), 8 класс6
Вариант 1. Программа (полное ветвление)
print("Введите два целых числа")
a = int(input())
b = int(input())
if a > b:
полная форма
условного
M = a
оператора
else:
M = b
print("Наибольшее число", M)
Решение c вызовом функции max и особой записью
условного оператора :
M = max(a, b)
К.Ю. Поляков, Е.А. Ерёмин, 2018
M = a if a > b else b
http://kpolyakov.spb.ru
7. Выбор наибольшего из двух чисел (вар. 2)
Программирование (Python), 8 класс7
Выбор наибольшего из двух чисел (вар. 2)
начало
ввод a,b
M =a
да
b > a?
нет
неполная
форма
ветвления
M =b
вывод M
конец
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
8. Вариант 2. Программа (неполное ветвление)
Программирование (Python), 8 класс8
Вариант 2. Программа (неполное ветвление)
print("Введите два целых числа")
a = int(input())
b = int(input())
M = a
неполная форма
условного
if b > a:
оператора
M = b
print("Наибольшее число", M)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
9. Примеры
Программирование (Python), 8 класс9
Примеры
Поиск минимального:
if a < b:
M = a
if b < a:
M = b
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
10. Cортировка по убыванию
Программирование (Python), 8 класс11
Вложенные условные операторы
Задача: в переменных a и b записаны возрасты Андрея и
Бориса. Кто из них старше?
Сколько вариантов?
if a > b:
print("Андрей старше")
else:
if a == b:
print("Одного возраста")
else:
print("Борис старше")
?
? Зачем нужен?
К.Ю. Поляков, Е.А. Ерёмин, 2018
вложенный
условный оператор
http://kpolyakov.spb.ru
11. Вложенные условные операторы
Программирование (Python), 8 класс12
Каскадное ветвление
if a > b:
print("Андрей старше")
elif a == b:
print("Одного возраста")
else:
print("Борис старше")
! elif = else if
Если после else сразу следует ещё один оператор if,
можно использовать «каскадное» ветвление с
ключевым словом elif (сокращение от else-if)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
12. Каскадное ветвление
Программирование (Python), 8 класс13
Каскадное ветвление
cost = 1500
if cost < 1000:
print ( "Скидок нет." )
elif cost < 2000:
первое сработавшее
условие
print ( "Скидка 2%." )
elif cost < 5000:
print ( "Скидка 5%." )
else:
print ( "Скидка 10%." )
? Что выведет?
К.Ю. Поляков, Е.А. Ерёмин, 2018
Скидка 2%.
http://kpolyakov.spb.ru
13. Каскадное ветвление
Знаки для записи условийСложное условие состоит из нескольких простых,
связанных с помощью логических связок:
and – И (конъюнкция - одновременное выполнение условий)
or – ИЛИ (дизъюнкция - выполнение хотя бы одного из условий)
not – не (инверсия - отрицание условия)
ПРИМЕРЫ
х>5 and х<9
x>0 and x<=5
х>2 or х<1
a=0 or (b=0 and c=0)
not х > 5
14.
Программирование (Python), 8 класс15
Задачи (без функций min и max!)
«A»: Ввести два целых числа, найти наибольшее и
наименьшее из них.
Пример:
Введите два целых числа:
1 5
Наибольшее число 5
Наименьшее число 1
«B»: Ввести четыре целых числа, найти наибольшее из
них.
Пример:
Введите четыре целых числа:
1 5 4 3
Наибольшее число 5
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
15. Задачи (без функций min и max!)
Программирование (Python), 8 класс16
Задачи
«C»: Ввести последовательно возраст Антона, Бориса и
Виктора. Определить, кто из них старше.
Пример:
Возраст Антона: 15
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Борис старше всех.
Пример:
Возраст Антона: 17
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Антон и Борис старше Виктора.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru