http://morevokne.ru/

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

Чертёжник учится, или Использование вспомогательных алгоритмов

Чертёжник может рисовать любые фигуры из отрезков, например цифры почтового индекса. Как известно, каждая такая цифра вписана в прямоугольник (рис. 70).

цифры почтового индекса

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

Алгоритм рисования цифры 0 может иметь вид:

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

Для чего нужна последняя команда?

Для рисования цифры 6 можно использовать алгоритм:

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

Для чего нужна первая команда? Для чего нужна последняя команда?

А теперь представьте, что для Чертёжника необходимо разработать алгоритм рисования почтового индекса города Красноярска — 660000.

Самый простой вариант — составить очень длинный алгоритм, в котором дважды повторить рисование цифры 6 и четырежды — цифры 0.

Но есть и другой способ. Оказывается, Чертёжник может «запомнить», как рисуется та или иная цифра. Для этого алгоритм рисования цифр 0 и 6 нужно оформить в виде вспомогательного алгоритма.

Вспомогательный алгоритм рисования цифры 0 будет выглядеть так:

алг цифра_0
нач 
опустить перо
сместиться на вектор (0, 2)
сместиться на вектор (1, 0)
сместиться на вектор (0, -2)
сместиться на вектор (-1, 0)
поднять перо
сместиться на вектор (2, 0)

кон

Строка алг цифра_0 называется заголовком алгоритма. Имя алгоритма — цифра_0. Алгоритм рисования буквы помещается чуть правее между служебными словами нач и кон.

Вспомогательный алгоритм рисования цифры 6 оформите самостоятельно.

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

В среде КуМир основной алгоритм для изображения индекса 660000 будет выглядеть так:

использовать Чертежник
алг индекс Красноярска
нач
цифра_6
цифра_6
цифра_0
цифра_0
цифра_0
цифра_0
кон

К какому типу алгоритмов относится этот основной алгоритм?


Comments are closed.