Разветвляющийся алгоритм

Содержание

Слайд 2

Содержание:

Определение
Виды разветвляющихся алгоритмов
Организация разветвляющихся алгоритмов в Turbo Pascal
Решение задач с использованием разветвляющихся

Содержание: Определение Виды разветвляющихся алгоритмов Организация разветвляющихся алгоритмов в Turbo Pascal Решение
алгоритмов

Слайд 3

Разветвляющийся алгоритм

- это алгоритм, содержащий хотя бы одно условие, в результате

Разветвляющийся алгоритм - это алгоритм, содержащий хотя бы одно условие, в результате
которого обеспечивается переход на один из двух возможных шагов
Например,
Переход улицы по светофору (Если свет зеленый, то переходи, иначе стой)
Определение числа корней в квадратном уравнении (Если дискриминант отрицательный, то решений нет; если дискриминант равен нулю, то уравнение имеет один корень; если дискриминант положительный, то уравнение имеет два решения)

Слайд 4

Виды развилок

полная

неполная

Действия определены и в случае истинности условия, и в случае ложности

Действия

Виды развилок полная неполная Действия определены и в случае истинности условия, и
определены либо в случае истинности условия, либо в случае ложности

Например, алгоритм «Покупка»: Если товар в наличии,
то купи его,
иначе купи другой товар
Конец ветвления.
Алгоритм «Вычисление значения модуля числа»: Если число неотрицательное, то запиши число, иначе запиши число с противоположным знаком
Конец ветвления.

Например, алгоритм «Покупка»: Если товар в наличии, то купи его
Конец ветвления.
Алгоритм «Вычисление арифметического корня»: Если число неотрицательное, то извлеки из него корень
Конец ветвления.

Слайд 5

Виды развилок

полная

неполная

условие

Серия команд 1

Серия команд 2

да

нет

Если условие истинно, то выполняется серия команд

Виды развилок полная неполная условие Серия команд 1 Серия команд 2 да
1, иначе выполняется серия команд Конец ветвления.

Если условие истинно, то выполняется серия команд 1 Конец ветвления.

Слайд 6

Полная развилка

Проверить условие
Если условие истинно, то выполнить серию команд по ветви

Полная развилка Проверить условие Если условие истинно, то выполнить серию команд по
«ДА», если ложно - выполнить серию команд по ветви «НЕТ»

Неполная развилка

Проверить условие
Если условие истинно, то выполнить серию команд по ветви «ДА»

Слайд 7

Примеры развилок

полная

неполная

Примеры развилок полная неполная

Слайд 8

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

Для организации разветвленных алгоритмов в Pascal предусмотрена структура: IF

Организация разветвляющихся алгоритмов в Pascal Для организации разветвленных алгоритмов в Pascal предусмотрена
условие
THEN серия команд 1 ELSE серия команд 2;
END;

В случае неполной развилки: команда ELSE и серия команд 2 в записи отсутствуют

Слайд 9

Например:
IF Х>=0 THEN Y:=X ELSE Y:=-X; END.
IF Х>=0 THEN Y:=SQRT(X);
END.

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

Например: IF Х>=0 THEN Y:=X ELSE Y:=-X; END. IF Х>=0 THEN Y:=SQRT(X);

Слайд 10

Вопросы для проверки

Какие алгоритмы называются разветвленными?
Приведите 3-4 примера разветвленных алгоритмов.
Какие виды развилок

Вопросы для проверки Какие алгоритмы называются разветвленными? Приведите 3-4 примера разветвленных алгоритмов.
бывают?

Приведите примеры алгоритмов полной и неполной разветвленной структуры.
Какого типа структура описана в пословице «Нет друга – ищи, а нашел – береги»?

Слайд 11

Вопросы для проверки

Какие команды служат для записи разветвленных алгоритмов в Pascal?
Какие формы

Вопросы для проверки Какие команды служат для записи разветвленных алгоритмов в Pascal?
записи предусмотрены для записи разветвлений?
Когда удобно использовать строчную или блочную форму записи разветвленных алгоритмов?

Чем отличается запись полной развилки от неполной?
Добавьте недостающие слова «Если условие истинно, то выполняются действия, записанные после команды …, в противном случае выполняются действия, записанные после команды …»

Слайд 12

Решение задач

Даны два числа X и Y.
Вывести на экран наибольшее из заданных

Решение задач Даны два числа X и Y. Вывести на экран наибольшее из заданных чисел.
чисел.

Слайд 13

Решение задач

PROGRAM maximum;
VAR x, y, m: integer;
BEGIN
WRITELN(‘введите числа х и у’);
READLN (x,y);
IF

Решение задач PROGRAM maximum; VAR x, y, m: integer; BEGIN WRITELN(‘введите числа
x>y
THEN m:=x
ELSE m:=y;
WRITELN (‘наибольшее’,m);
END
В данном примере задаются два числа – переменные X и Y
Проверяется условие X>Y
Если условие окажется истинным (т.е. число Х больше числа Y), то переменной М будет присвоено значение переменной Х, иначе (т.е. число Х не больше числа Y) - переменной М будет присвоено значение переменной Y
Значение переменной М выводится на экран

?
Что необходимо
изменить в программе
для нахождения
минимального значения?

Слайд 14

Задания для проверки

А:=2; IF A>0 THEN M:=1 ELSE M:=0;
В:=0; IF В=0 THEN M:=0 ELSE

Задания для проверки А:=2; IF A>0 THEN M:=1 ELSE M:=0; В:=0; IF
M:=1;
С:=SQRT(16); IF C<8 THEN M:=1 ELSE M:=-1;
S:=-1; IF S>=0 THEN M:=SQRT(S) ELSE M:=S*2;
R:=-5; IF R=ABS(R) THEN M:=R ELSE M:=0;

Ответ: 1. Так как условие «А>0» для А, равного 2, истинно, то выполняется действие,записанное после команды THEN: «М:=1»

По заданным фрагментам программ определите значение переменной М

Слайд 15

Задания для проверки

Запишите условие на языке Pascal
Число А положительное
Число В неотрицательное
Число Н

Задания для проверки Запишите условие на языке Pascal Число А положительное Число
принадлежит [5;15]
Число М двузначное
Число С кратно 5
Число Р четное

Ответ
А>0
(H>=5) and (H<=15)
(C mod 5) = 0

ВНИМАНИЕ!
Для записи сложных условий используется логическая операция and

Имя файла: Разветвляющийся-алгоритм.pptx
Количество просмотров: 55
Количество скачиваний: 0