Условный оператор
Условный оператор: неполная форма
Условный оператор
Составить программу для решения уравнения
Программа:
Знаки отношений
Вложенные условные операторы
Каскадное ветвление
Каскадное ветвление
Сложные условия
425.00K
Category: programmingprogramming

Организация ветвления в Python. Алгоритмы и программирование, язык Python. 10 класс

1.

1
Организация
ветвления в Python
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

2. Условный оператор

Алгоритмы и программирование, язык Python, 10 класс
2
Условный оператор
Задача: изменить порядок действий в зависимости от
выполнения некоторого условия.
полная
форма
да
нет
ветвления
a > b?
M=a
M=b
вывод M
отступы
К.Ю. Поляков, Е.А. Ерёмин, 2018
? Если a = b?
if a > b:
M = a
else:
M = b
http://kpolyakov.spb.ru

3. Условный оператор: неполная форма

Алгоритмы и программирование, язык Python, 10 класс
3
Условный оператор: неполная форма
M=a
да
b > a?
нет
M = a
if b > a:
M = b
M=b
неполная
форма
ветвления
вывод M
Решение в стиле Python:
M = max(a, b)
К.Ю. Поляков, Е.А. Ерёмин, 2018
M = a if a > b else b
http://kpolyakov.spb.ru

4. Условный оператор

Алгоритмы и программирование, язык Python, 10 класс
4
Условный оператор
if a < b:
с = a
a = b
b = c
? Что делает?
b
a
4
6
2
6
4
? Можно ли обойтись
без переменной c?
Решение в стиле Python:
?
4
c
a, b = b, a
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

5. Составить программу для решения уравнения

Алгоритмы и программирование, язык Python, 10 класс
5
Составить программу для решения уравнения
ax bx c 0
2
Формат входных данных:
значения коэффициентов a, b и c вводятся с
клавиатуры через пробел в одной строке
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

6. Программа:

Алгоритмы и программирование, язык Python, 10 класс
6
Программа:
from math import sqrt
print("Введите a, b, c:")
a, b, c = map(float, input().split())
D = b*b - 4*a*c
if D < 0:
print("Нет")
else:
x1 = (-b + sqrt(D))/(2*a)
x2 = (-b - sqrt(D))/(2*a)
print("x1={:5.3f} x2={:5.3f}".format(
x1, x2))
? Что делает?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

7. Знаки отношений

Алгоритмы и программирование, язык Python, 10 класс
7
Знаки отношений
> <
больше, меньше
>=
больше или равно
<=
меньше или равно
==
равно
!=
не равно
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

8. Вложенные условные операторы

Алгоритмы и программирование, язык Python, 10 класс
8
Вложенные условные операторы
Задача: в переменных a и b записаны возрасты Андрея и
Бориса. Кто из них старше?
if a > b:
print("Андрей старше")
else:
if a == b:
print("Одного возраста")
else:
print("Борис старше")
? Зачем нужен?
К.Ю. Поляков, Е.А. Ерёмин, 2018
вложенный
условный оператор
http://kpolyakov.spb.ru

9. Каскадное ветвление

Алгоритмы и программирование, язык Python, 10 класс
9
Каскадное ветвление
if a > b:
print("Андрей старше")
elif a == b:
print("Одного возраста")
else:
print("Борис старше")
! elif = else if
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

10. Каскадное ветвление

Алгоритмы и программирование, язык Python, 10 класс
10
Каскадное ветвление
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

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

Алгоритмы и программирование, язык Python, 10 класс
11
Сложные условия
Задача: набор сотрудников в возрасте 25-40 лет
(включительно). сложное условие
if v >= 25 and v <= 40 :
print("подходит")
else:
print("не подходит")
and «И»
or «ИЛИ»
not «НЕ»
Приоритет :
1) отношения (<, >, <=, >=, ==, !=)
2)not («НЕ»)
3)and («И»)
4)or («ИЛИ»)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
English     Русский Rules