Похожие презентации:
Vspomogatelnye_algoritmy_i_protsedury
1.
Тема:ВСПОМОГАТЕЛЬНЫЕ
АЛГОРИТМЫ И
ПРОЦЕДУРЫ
2.
В теории алгоритмов известно понятиевспомогательного алгоритма, т. е.
алгоритма решения некоторой
подзадачи из основной решаемой
задачи. При этом алгоритм решения
исходной задачи называется
основным.
3.
Декомпозиция задачиЗадача
Подзадача 1
Алгоритм 1
Подзадача 2
Алгоритм 2
Подзадача 3
Алгоритм 3
4.
Декомпозиция задачиПодзадача 1
Алгоритм решения
задачи
Задача
Подзадача 2
Алгоритм 1
Вспомогательные
Алгоритм 2
алгоритмы
Подзадача 3
Алгоритм 3
5.
Программированиевспомогательных алгоритмов
B
В языках программирования
вспомогательные алгоритмы
оформляются в виде
A
d
подпрограмм.
P
6.
ЗАДАЧАТребуется составить алгоритм
вычисления степенной функции с
целым показателем у = хk, где k —
целое число, х ≠ 0.
7.
В алгебре такая функция определенаследующим образом:
8.
В данной задаче в качестве подзадачиможно рассматривать
возведение числа в целую
положительную степень.
9.
Учитывая, что 1/х-n = (1/х)-n , запишемосновной алгоритм решения этой задачи.
10.
Здесь дважды присутствует командаобращения к вспомогательному алгоритму
с именем СТЕПЕНЬ. Это алгоритм
возведения вещественного основания в
целую положительную степень путем
его многократного перемножения.
Величины, стоящие в скобках
в команде обращения к вспомогательному
алгоритму, называются фактическими
параметрами.
11.
В учебном алгоритмическом языкевспомогательные алгоритмы
оформляются в виде процедур.
12.
Запишем на АЯ процедуру СТЕПЕНЬ.13.
Заголовок вспомогательного алгоритманачинается со слова «процедура», после
которого следует имя процедуры и в
скобках — список формальных параметров.
14.
В этом списке перечисляются переменныеаргументы и переменные-результаты суказанием их типов. Здесь a и k —
формальные параметры-аргументы, z —
параметр-результат. Следовательно,
процедура СТЕПЕНЬ производит
вычисления по формуле z = аk.
15.
В основном алгоритме «Степеннаяфункция» обращение к процедуре
производится путем указания ее
имени с последующим в скобках
списком фактических параметров.
16.
Между формальными и фактическимипараметрами процедуры должны выполняться
следующие правила соответствия:
по количеству (сколько формальных, столько и
фактических параметров);
по последовательности (первому формальному
соответствует первый фактический параметр,
второму — второй и т.д.);
по типам (типы соответствующих формальных и
фактических параметров должны совпадать).
17.
Фактические параметры-аргументы могутбыть выражениями соответствующего типа.
18.
Обращение к процедуре инициируетследующие действия:
1) Значения параметров-аргументов присваиваются
соответствующим формальным параметрам.
2) Выполняется тело процедуры (команды внутри
процедуры).
3) Значение результата передается соответствующему
фактическому параметру, и происходит переход к
выполнению следующей команды основного
алгоритма.
19.
В процедуре СТЕПЕНЬ нет команд вводаисходных данных и вывода результатов.
Здесь присваивание начальных значений
аргументам (а, n) производится через
передачу параметров-аргументов, а
присваивание результата переменной (у)
происходит через передачу параметрарезультата (z).
20.
Таким образом, передача значенийпараметров процедур — это третий
способ присваивания (наряду с
командой присваивания и командой
ввода).
21.
Использование процедур позволяетстроить сложные алгоритмы методом
последовательной детализации.
22.
НА ЭТОМ ЗАНЯТИИ МЫ…Повторим:
Этапы решения задач на компьютере
Алгоритмы.
Величины.
Структуру алгоритмов.