Вспомогательные алгоритмы и подпрограммы

Основные темы параграфа:

■ что такое вспомогательный алгоритм;

■ обращение к вспомогательному алгоритму (процедуре);

■ описание вспомогательного алгоритма (процедуры);

■ метод последовательной детализации;

■ сборочный метод.

Что такое вспомогательный алгоритм

А сейчас решим следующую задачу.

Задача 2. Пусть требуется составить программу, по которой ГРИС напишет на экране четырехзначное число 1919 (рис. 1.5).

Вспомогательные алгоритмы и подпрограммы - student2.ru

Конечно, можно поступить так, как в предыдущей задаче, написав одну длинную программу, по которой исполнитель шаг за шагом нарисует эти цифры. Но с очевидностью возникает другая идея: поскольку здесь дважды повторяются цифры 1 и 9, нельзя ли сократить работу, написав программы рисования той и другой цифры только один раз? Это действительно можно сделать.

 
  Вспомогательные алгоритмы и подпрограммы - student2.ru

Вспомогательный алгоритм, записанный на языке программирования, называется подпрограммой или процедурой.

Обращение к вспомогательному алгоритму (процедуре)

В таком случае программа решения поставленной задачи разделяется на основную программу (основной алгоритм) и процедуры (вспомогательные алгоритмы). Каждая процедура должна иметь свое уникальное имя. Для рассматриваемой задачи имена процедур выберем следующими: ЕДИНИЦА и ДЕВЯТЬ. Тогда в основной программе команды обращения к этим процедурам будут такими:

сделай ЕДИНИЦА

сделай ДЕВЯТЬ

По этим командам управление передается соответствующим процедурам, и после их выполнения управление вернется к следующей команде основной программы.

Договоримся, что начальное и конечное состояния ГРИС при вычерчивании каждой цифры будут такими, как показано стрелками на рис. 1.6 (внизу, на восток). У единицы начальное и конечное состояния совпадают. Основная программа:

программаЧисло 1919

Нач

сделайЕДИНИЦА

Прыжок

сделайДЕВЯТЬ

Прыжок

сделайЕДИНИЦА

Прыжок

сделайДЕВЯТЬ

Кон

Данный пример познакомил вас с новой командой из СКИ графического исполнителя — командой обращения к процедуре. Ее формат, т. е. общий вид, следующий:

сделай <имя процедуры>

Описание вспомогательного алгоритма (процедуры)

Вот и все! Так просто! Но теперь надо «объяснить» исполнителю, что такое ЕДИНИЦА и что такое ДЕВЯТЬ. Это делается в описаниях процедур (здесь порядок выполнения — по столбцам):

 
  Вспомогательные алгоритмы и подпрограммы - student2.ru

Формат описания процедуры:

процедура <имя процедуры>

Нач

<тело процедуры>

Кон

Имя в описании и имя в обращении должны точно совпадать (никаких склонений по падежам!). Описание процедур располагается после основной программы.

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

Наши рекомендации