Используя вспомогательные алгоритмы нарисовать

Содержание урока

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

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

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

Решим следующую задачу:

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

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

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

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

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

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

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

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

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

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

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

нач
сделай ЕДИНИЦА
прыжок
сделай ДЕВЯТЬ
прыжок
сделай ЕДИНИЦА
прыжок
сделай ДЕВЯТЬ

кон

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

сделай

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

  • Попроси больше объяснений
  • Следить
  • Отметить нарушение

Alinaaaa8 15.03.2017

Ответ

Проверено экспертом

// PascalABC.NET
// Версия 3.3.5 сборка 1662 (29.04.2018)

begin
// поле 5 на 20
Field(20, 5);
// 1
ToPoint(1, 2);
PenDown;
OnVector(1, 0);
Onvector(0, 1);
OnVector(1, 0);
Onvector(0, −1);
OnVector(1, 0);
Onvector(0, 1);
OnVector(1, 0);
Onvector(0, −1);
OnVector(1, 0);
PenUp;
//2
ToPoint(7, 2);
PenDown;
Onvector(0, 1);
OnVector(1, 0);
OnVector(0, 1);
OnVector(1, 0);
OnVector(0, −1);
Onvector(1, 0);
OnVector(0, −1);
OnVector(-1, 0);
OnVector(0, −1);
OnVector(-1, 0);
OnVector(0, 1);
OnVector(-1, 0);
PenUp;
//3
ToPoint(11, 4);
PenDown;
OnVector(0, −2);
OnVector(0, 1);
OnVector(1, 0);
OnVector(0, 1);
OnVector(0, −2);
PenUp;
//4
ToPoint(13, 4);
PenDown;
OnVector(0, −2);
OnVector(1, 0);
OnVector(0, 2);
OnVector(-1, 0);
PenUp;
//5
ToPoint(16, 4);
PenDown;
OnVector(-1, 0);
OnVector(0, −2);
OnVector(1, 0);
PenUp;
//6
ToPoint(17, 1);
PenDown;
OnVector(0, 1);
OnVector(1, 0);
OnVector(0, 1);
OnVector(1, 0);
OnVector(0, 1);
OnVector(1, 0);
end.

Урок 30. Информатика 6 класс ФГОС

Конспект урока «Использование вспомогательных алгоритмов»

На прошлом уроке мы узнали, что Чертёжник может рисовать любые фигуры, состоящие из отрезков. Так на пример при помощи чертёжника мы можем рисовать буквы русского алфавита.

Нарисуем букву «А». Для удобства условимся, что все буквы мы будем рисовать, начиная с левого нижнего угла, и в начале рисования перо будет поднято. Алгоритм изображения буквы «А» будет выглядеть так:

Последние две команды нужны, чтобы сместиться на начальную позицию для рисования следующей буквы.

Но предположим, что нам нужно написать алгоритм, чтобы изобразить слово, в котором буква «А» повторяется несколько раз, на пример для слова АРАРАТ. Мы конечно можем написать длинный алгоритм, в котором последовательность команд для рисования буквы «А» будет повторяться трижды, а для буквы «Р» — дважды, но можно поступить проще.

У Чертёжника есть инструмент для запоминания, того, как рисуется фигура, чтобы потом можно было использовать этот алгоритм повторно. Этот инструмент называется вспомогательным алгоритмом.

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

Так для решения данной задачи можно оформить последовательности команд для рисования буков «А» и «Р» в виде вспомогательных алгоритмов. Вспомогательный алгоритм буквы «А» будет выглядеть так. Он, как и все вспомогательные алгоритмы, записывается после основного алгоритма.

Строка «алг буква_а» называется заголовком алгоритма, а «буква_а» — его названием. Сам алгоритм рисования буквы, для простоты ориентирования в тексте программы, должен находиться правее, между служебными словами «нач» и «кон».

А теперь попробуем вместе написать вспомогательный алгоритм для рисования буквы Р.

Буква «Р» из отрезков должна выглядеть так. Она состоит из четырёх отрезков.

Сначала записываем строку заголовка «алг буква_р», далее идет служебное слово «нач» и сразу можем записать в следующей строке служебное слово «кон», далее между служебными словами «нач» и «кон», на расстоянии одного пробела от левого края поля, мы будем записывать команды для рисования самой буквы «Р». Так как перо находится в левом нижнем углу позиции для рисования буквы, мы можем сразу опустить перо и провести отрезок на 2 единицы вверх. Напишем соответствующие команды.

сместиться на вектор (0,2)

Затем напишем команды для рисования остальных трех отрезков

сместиться на вектор (1,0)

сместиться на вектор (0, −1)

сместиться на вектор (-1,0)

А теперь команды для перемещения на начальную позицию следующей буквы.

сместиться на вектор (2, −1)

Так у нас есть вспомогательный алгоритм для рисования буквы «Р»

Теперь мы можем написать алгоритм для рисования слова «АРАРАТ».

Вначале мы должны вызвать вспомогательный алгоритм для написания буквы «А», для этого достаточно набрать его название.

Затем вызвать вспомогательный алгоритм для буквы «Р»,

затем снова для буквы «А», затем снова для буквы «Р», снова для буквы «А» и наконец, написать команды для рисования буквы «Т».

сместиться на вектор (1,0)

сместиться на вектор (0,2)

сместиться на вектор (-1,0)

сместиться на вектор (2,0)

Так, как буква «Т» — последняя буква в слове, отступ после нее можно не делать

При желании, вы можете написать вспомогательный алгоритм для изображения буквы «Т» самостоятельно.

Запустим программу на выполнение.

Рассмотрим ещё одну задачу. Написать для исполнителя чертёжник программу для рисования рисунка.

Видно, что на рисунке три раза изображён элемент треугольник. Оформим последовательность команд для изображения треугольника в виде вспомогательного алгоритма.

Назовём вспомогательный алгоритм треугольник. Условимся что перо, как и в случае с буквами будет находиться в левом нижнем углу, и будет поднято.

Будем рисовать треугольник путём его обхода по вершинам. Чтобы нарисовать треугольник чертёжник должен выполнить следующую последовательность команд:

сместиться на вектор (2,4)

сместиться на вектор (2, −4)

сместиться на вектор (-4,0)

Теперь рассмотрим алгоритм для рисования всего рисунка: для начала нам необходимо задать команду для перемещения на начальную позицию «сместиться в точку (1,1)» , затем вызвать вспомогательный алгоритм для рисования треугольника, записав название вспомогательного алгоритма, затем переместиться на начальную позицию для рисования следующего треугольника, задав команду «сместиться на вектор (4,0)», после чего снова вызвать вспомогательный алгоритм для рисования треугольника, затем переместиться на начальную позицию для рисования последнего треугольника, задав команду «сместиться на вектор (-2,4)» и наконец вызвать вспомогательный алгоритм для рисования треугольника.

Можно заметить, что данный рисунок можно рисовать, начиная с любой позиции. Для этого достаточно изменить первую команду. Так, если в начале будет команда «сместиться в точку (2,3)», результатом выполнения программы будет рисунок.

На этом уроке мы рассмотрели вспомогательные алгоритмы чертёжника. Подведём итоги урока.

Для многократного использования одной и той же последовательности команд в программе для Чертёжника можно применять вспомогательные алгоритмы.

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

У вспомогательного алгоритма есть заголовок и название.

В основном алгоритме вспомогательные алгоритмы вызываются по названию.

Читайте также:  Загрузить dbf в sql
Оцените статью
Adblock detector