Урок 30
Использование вспомогательных алгоритмов
Теоретическая часть
В программировании часто возникают ситуации, когда одну и ту же группу операторов, реализующих определённую цель, требуется повторить без изменений в нескольких местах программы. Для решения данной задачи используются процедуры (подпрограммы)
Подпрограмма - именованная группа операторов, которую можно вызвать для выполнения несколько раз из различных мест программы.
Вспомогательный алгоритм (подпрограмма) должен:
иметь имя, по которому его можно вызвать из других алгоритмов;
возвращать управление тому алгоритму, из которого он был вызван. После того как завершится выполнение вспомогательного алгоритма, вызвавший его алгоритм должен продолжить работу с той точки, в которой он был прерван;
иметь возможность вызывать другие алгоритмы;
иметь достаточно малые размеры
Описание процедуры имеет вид:
procedure имя;
begin
операторы
end;
Рассмотрим применение процедуры на конкретном примере. Необходимо нарисовать три одинаковые треугольники смотри рисунок.
Программа будет иметь следующий вид:
Program Elka;
uses Drawman;
begin
Field(9,9);
ToPoint (1,1);
PenDown; 1-й треугольник
OnVector(3,2);
OnVector(3,-2);
OnVector(-6,0);
PenUp;
ToPoint (1,3);
PenDown; 2-й треугольник
OnVector(3,2);
OnVector(3,-2);
OnVector(-6,0);
PenUp;
ToPoint (1,5);
PenDown; 3-й треугольник
OnVector(3,2);
OnVector(3,-2);
OnVector(-6,0);
PenUp;
ToPoint (0,0);
End.
Мы видим, что одна и та же последовательность команд используется для рисования треугольников:
PenDown;
OnVector(3,2);
OnVector(3,-2);
OnVector(-6,0);
PenUp;
Оформим эту последовательность команд в виде процедуры с именем triangle. И в основной программе вместо этой последовательности запишем только имя процедуры triangle. Тогда программа примем вид:
Program Elka;
uses Drawman;
procedure Triangle;
begin
PenDown;
OnVector(3,2);
OnVector(3,-2);
OnVector(-6,0);
PenUp;
end;
begin
Field(9,9);
ToPoint (1,1);
Triangle;
ToPoint (1,3);
Triangle;
ToPoint (1,5);
Triangle;
ToPoint (0,0);
End.
Видео "Вспомогательный алгоритм"
Практическая часть
Задание 1. Измените программу из теоретической части, так что было нарисовано пять треугольников.
Задание 2. Составьте программу построения следующего изображения с использованием процедуры Flag.
Задание 3. Составьте программу построения следующего изображения с использованием процедуры Square.
Электронная рабочая тетрадь
Задание 1- Создание алгоритмов(заполните пропуски)
Задание 2 - Найдите термины(слова из букв)
Задание 3 - Способы записи алгоритмов(классификация)
Задание 4 - Составление алгоритмов(игра парочки)
Задание 5 - Циклические алгоритмы(простой порядок)
Проверка знаний