1 Составление алгоритмов с ветвлением Цель: научиться составлять блок-схемы с ветвлением
2 Виктор Васнецов «Витязь на распутье»
3 Семакин, Хеннер «Задачник-1», стр
4 Задача 1 Даны три действительные числа. Возвести в квадрат те из них, значения которых неотрицательны, а в четвёртую степень – отрицательные.
5 Ответим на вопросы Что дано? Какими переменными обозначим данные? Что надо найти? Какими переменными обозначим результат? Как будем находить результат? Как на математическом языке обозначить неотрицательные числа?
6 Алгоритм 1 Вычисление Ввод а,b,c a>=0 x:=a*ax:=a*a*a*a Вывод х
7 b>=0 y:=b*by:=b*b*b*b Вывод y c>=0 z:=c*cz:=c*c*c*c Вывод z кон
8 Вопрос: Можно ли в алгоритме взять другое условие? Задание: Составьте самостоятельно блок-схему, если условие взято наоборот: a
9 Фрагмент алгоритма 1 Вычисление Ввод а,b,c a
10 Задача 2 Даны две точки А(x1,y1) и В (x2,y2). Составить алгоритм, определяющий, которая из точек находится ближе к началу координат
11 Составим математическую модель задачи А(x1,y1) B(x2,y2) y x a= a b b= y1y1 х1 Какая точка ближе к началу координат?
12 Расстояние Ввод x1,y1,x2,y2 a:= b:=
13 a
14 Задача 3 Даны два угла треугольника (в градусах). Определить, существует ли такой треугольник. Если да, то будет ли он прямоугольным? Что мы знаем об углах треугольника?
15 Проанализируем задачу 3 Какими переменными обозначим величину углов треугольника? Как составить условие существования треугольника по двум углам на математическом языке?
16 Алгоритм 3 Треугольник Ввод h,c h+c
17 Проанализируем алгоритм 3 Какой будет результат, если значения h и c будут равны 0? Как исправить алгоритм, чтобы при h=0 и c=0 алгоритм тоже работал?
18 Составное условие – либо h=0, либо c=0, либо оба равны нулю – и h=0, и c=0 h=0 или c=0 h=0 и c=0 Если хотя бы одно значение или оба значения будут равны 0, то треугольник – не существует
19 Изменим начало алгоритма 3 Треугольник Ввод h,c h=0 или c=0 h+c
20 Проведём дальнейший анализ задачи 3 Как по двум углам определить, является ли треугольник прямоугольным? Рассмотрим всевозможные случаи комбинации двух углов. Например: 45 0 и и и 30 0
21 Как математически записать условие? h=90 или c=90 или h+c=90 Можно записывать тройные условия Можно записать условие по- другому? h=90 или c=90 h+c=90
22 Дополним алгоритм новым уточнением в виде того условия, которое вам понравилось больше
23 Треугольник Ввод h,c h=0 или c=0 h+c
24 Вывод Треугольник прямоугольный Вывод Треугольник не прямоугольный Вывод Треугольник не существует кон
25 Возможно, вы найдёте ещё один способ решения этой задачи дома
26 Домашнее задание: задача 4 Задача 4.Даны действительные числа х и у, не равные друг другу. Меньшее из этих чисел заменить половиной их суммы, а большее – их удвоенным произведением. Задача 5. Даны два целых числа. Если числа не равны, то заменить каждое из них одним и тем же числом, равному большему из исходных, а если равны, то заменить числа 0
27 Опора к алгоритму 4 Ввод x,y Вычисление Вывод х,y кон
28 Как составить условие, чтобы найти правильный и короткий путь?
29 Вывод При составлении условия важна тщательная проверка всех случаев значений переменных, иначе алгоритм в общем виде будет работать неправильно Можно использовать составные условия Для решения одной и той же задачи могут быть составлены различные алгоритмы Процесс программирования – творческий процесс
30 Спасибо за урок!