Программирование разветвляющихся алгоритмов

Содержание

Слайд 2

Ключевые слова

условный оператор
неполный условный оператор
составной оператор
каскадное ветвление

Ключевые слова условный оператор неполный условный оператор составной оператор каскадное ветвление

Слайд 3

Общий вид условного оператора

Полная форма условного оператора:
if <условие>: <оператор_1>
else: <оператор_2>

Неполная форма

Общий вид условного оператора Полная форма условного оператора: if : else: Неполная
условного оператора:
if <условие> : <оператор>

Операции
отношений
>=, <=, !=, ==

Логические
операции
and, or, not

Простые

Сложные

Условия - логические выражения

Слайд 4

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

print ('Определение принадлежности точки отрезку')
a = int (input ('Введите а: '))
b

Условный оператор print ('Определение принадлежности точки отрезку') a = int (input ('Введите
= int (input ('Введите b: '))
x = int (input ('Введите x: '))
if х >= а and x <= b:
print ('Точка принадлежит отрезку')
else:
print ('Точка не принадлежит отрезку')

Слайд 5

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

print ('Нахождение наибольшей из трёх величин')
a = int (input ('Введите

Неполный условный оператор print ('Нахождение наибольшей из трёх величин') a = int
а: '))
b = int (input ('Введите b: '))
c = int (input ('Введите c: '))
y = a
if b > y:
y = b
if c > y:
y = c
print ('y=', y)

Слайд 6

Вложенные ветвления


if <условие1> :
if <условие2> :
<оператор1>
else: <оператор2>
else: <оператор3>

Вложенные ветвления if : if : else: else:

Слайд 7

Каскадное ветвление
if <условие1>: <оператор 1>
elif <условие2>: <оператор 2>

elif <условие n>: <оператор n>
else

Каскадное ветвление if : elif : … elif : else : Если
: <оператор m>
Если после else сразу следует еще один оператор if, можно использовать каскадное ветвление со служебным словом elif (сокращение от else-if):
если очередное условие ложно, выполняется проверка следующего условия и т. д.
Каскадное ветвление позволяет выбрать один из нескольких (а не только из двух) вариантов.

Слайд 8

Решение линейного уравнения

Любое число

# Решение линейного уравнения
a = float( input ('Введите коэффициент

Решение линейного уравнения Любое число # Решение линейного уравнения a = float(
а>>'))
b = float( input ('Введите коэффициент b>>'))
if a != 0:
x = -b/ a
print ('Корень уравнения x=', x)
elif b != 0:
print ('Корней нет')
else:
print(' x–любое число')

Слайд 9

Блок-схема решения КВУР

Конец

Вывод
«Корни уравнения:
х1=», х1, «х2=», х2

х1=(-b+sqrt(d))/2/a

Начало

Введите коэффициенты a, b,

Блок-схема решения КВУР Конец Вывод «Корни уравнения: х1=», х1, «х2=», х2 х1=(-b+sqrt(d))/2/a
c

d=b*b-4*a*c

d < 0

да

Вывод
«Корней нет»

нет

d == 0

да

x=-b/2/a

Вывод
«Корень уравнения х=», х

нет

х2=(-b-sqrt(d))/2/a

Слайд 10

from math import * # подключение модуля для вычисления квадратного корня
# Решение

from math import * # подключение модуля для вычисления квадратного корня #
квадратного уравнения
print ('Введите коэффициенты а, b, с>>')
a = float (input ('a='))
b = float (input ('b='))
c = float (input ('c='))
d = b * b – 4 * a * c
if d<0:
print ('Корней нет')
elif d == 0:
x = – b/2/ a
print ('Корень уравнения x=', "{:6.4f}". format(x))
else:
x1 = (-b+sqrt(d))/2/ a
x2 = (-b – sqrt(d))/2/ a
print ('Корни уравнения:')
print ('x1=', "{:6.4f}". format(x1))
print ('x2=', "{:6.4f}". format(x2))

Слайд 11

Самое главное

При записи на языке Python разветвляющихся алгоритмов используют условный оператор:
if <условие>:

Самое главное При записи на языке Python разветвляющихся алгоритмов используют условный оператор:
<оператор_1>
else: <оператор_2>
Для записи неполных ветвлений используется неполный условный оператор:
if <условие>: <оператор>
Если при некотором условии требуется выполнить определённую последовательных операторов, то их объединяют в один составной оператор – они все должны иметь одинаковый отступ:
if <условие>:
<оператор 1>
<оператор n>
else:
<оператор x1>
<оператор xm>

Слайд 12

Опорный конспект

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

if <условие>: <оператор_1>
else : <оператор_2>

if <условие>: <оператор>

if <условие1>: <оператор

Опорный конспект Условный оператор if : else : if : if :
1>
elif <условие2>: <оператор 2>

elif <условие n>: <оператор n>
else : <оператор m>

Полная форма

Неполная форма

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

Слайд 13

Является ли условным оператором последовательность символов?
а) if х < у: х

Является ли условным оператором последовательность символов? а) if х б) if х
= 0 else: input (у)
б) if х >= у: х = 0; у := 0
else: print (z)
в) if x < y < z: a = a + 1

Вопросы и задания

Слайд 14

Дан условный оператор:
if a < 5: c = 1
else:
if a >

Дан условный оператор: if a else: if a > 5: c =
5: c = 2
else: c = 3
Какое значение имеет переменная а, если в результате выполнения условного оператора переменной с присваивается значение 3?

Вопросы и задания

Слайд 15

Используя полное ветвление, упростите следующий фрагмент программы:
if a > b: c

Используя полное ветвление, упростите следующий фрагмент программы: if a > b: c
= 1
if a > b: d = 2
if a <= b: c = 3
if a <= b: d = 4

Вопросы и задания

Слайд 16

Напишите программу, которая производит обмен
значений переменных x и y, если x

Напишите программу, которая производит обмен значений переменных x и y, если x
больше y.

Вопросы и задания

Слайд 17

есть ли среди цифр заданного целого трёхзначного числа одинаковые;

Дано трёхзначное

есть ли среди цифр заданного целого трёхзначного числа одинаковые; Дано трёхзначное число.
число.
Напишите программу, которая определяет:

Вопросы и задания

Слайд 18

является ли число «перевёртышем», т. е. числом, десятичная запись которого читается

является ли число «перевёртышем», т. е. числом, десятичная запись которого читается одинаково
одинаково слева направо и справа налево.

Дано трёхзначное число.
Напишите программу, которая определяет:

Вопросы и задания

Слайд 19

Даны две точки в плоской прямоугольной системе координат. Напишите программу, определяющую,

Даны две точки в плоской прямоугольной системе координат. Напишите программу, определяющую, которая
которая из точек находится ближе к началу координат.

Вопросы и задания

Слайд 20

Даны три натуральных числа. Напишите программу, определяющую, существует ли треугольник с

Даны три натуральных числа. Напишите программу, определяющую, существует ли треугольник с такими
такими длинами сторон.
Если такой треугольник существует, то определите его тип (равносторонний, равнобедренный, разносторонний).

Вопросы и задания

Слайд 21

Имеются данные о количестве полных лет трёх призёров спартакиады.
Напишите программу,

Имеются данные о количестве полных лет трёх призёров спартакиады. Напишите программу, выбирающую
выбирающую и выводящую возраст самого младшего призёра.

Вопросы и задания

Слайд 22

Напишите программу, вычисляющую значение функции:

-1 при x<0
0 при x=0
1 при x>0

y =

Вопросы

Напишите программу, вычисляющую значение функции: -1 при x 0 при x=0 1
и задания

Слайд 23

Напишите программу, определяющую, лежит ли точка
А(ха, ya):
на прямой y =

Напишите программу, определяющую, лежит ли точка А(ха, ya): на прямой y =
kx + l, над ней или под ней

Вопросы и задания

Слайд 24

Поле шахматной доски определяется парой натуральных чисел, каждое из которых не

Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит
превосходит 8.
Напишите программу, которая по введённым координатам двух полей (k, l) и (m, n) определяет, являются ли эти поля полями одного цвета.

Вопросы и задания