Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



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



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

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

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

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

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

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

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

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

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

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

ПРОЦ цифра_0
НАЧАЛО

опусти перо

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

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

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

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

подними перо

сдвинь на вектор (2,0)
КОНЕЦ

Строка ПРОЦ цифра_0 называется заголовком процедуры. Имя процедуры — цифра_0. Алгоритм рисования буквы помещается чуть правее между служебными словами НАЧАЛО и КОНЕЦ.

Процедура рисования цифры 6 будет выглядеть так:

ПРОЦ цифра_6

НАЧАЛО
сдвинь на вектор (-1, -1)
сдвинь на вектор (1, 0)
сдвинь на вектор (0,-1)
сдвинь на вектор (-1, 0)
сдвинь на вектор (0,1)
подними перо
сдвинь на вектор (2, -1)

КОНЕЦ

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

Теперь запишем основной алгоритм, с помощью которого будет нарисован индекс 660000:

переведи в точку (1, 1)
цифра_6
цифра_6
цифра_0
цифра_0
цифра_0
цифра_0

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





Дата публикования: 2014-10-25; Прочитано: 1381 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...