http://morevokne.ru/

Пример алгоритма управления Чертёжником. Информатика. Управление исполнителем Чертёжник

Пример алгоритма управления Чертёжником

Изобразим с помощью Чертёжника треугольник, положение вершин которого на координатной плоскости определяется парами чисел (1, 1), (3, 5), (5, 2) (рис. 66).

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

сместиться в точку (1, 1)
опустить перо сместиться в точку (3, 5)
сместиться в точку (5, 2)
сместиться в точку (1, 1)

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

А теперь составим такой алгоритм управления Чертёжником, чтобы с его помощью в произвольном месте координатной плоскости можно было нарисовать прямоугольник со сторонами, параллельными координатным осям, длины которых равны 2 и 4 единицам.

Зафиксируем одну из вершин прямоугольника в точке (1, 1). Нужный рисунок на координатной плоскости может выглядеть, как показано на рис. 67.

рис. 67
Предложите другой вариант рисунка, удовлетворяющий заданным условиям: одна из вершин прямоугольника расположена в точке (1, 1), а длины его сторон равны 2 и 4 единицам. (Существуют ещё семь вариантов.)

Можно определить координаты каждой из вершин этого прямоугольника и для его изображения составить следующую программу:

сместиться в точку (1, 1)
опустить перо
сместиться в точку (1, 3)
сместиться в точку (5, 3)
сместиться в точку (5, 1)
сместиться в точку (1, 1)

Этот алгоритм не будет решать поставленную задачу, если изменить координаты начальной точки (рис. 68). Изменение координат одной из вершин повлечёт за собой пересчет координат всех вершин прямоугольника. Причём это придется делать самому разработчику алгоритма.

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

Пусть (х, у) — координаты вершины А прямоугольника ABCD (рис. 69).

Тогда координаты вершины В можно записать как (х, у + 2), вершины С — как (х + 4, у + 2), вершины D — как (х + 4, у) (см. рис. 69).

рис. 69
Чтобы изобразить отрезок АВ, воспользуемся командой сместиться на вектор (0, 2).

В результате Чертёжник сдвинет перо из точки с координатами (х, у) в точку с координатами (х + О, у + 2).

По команде сместиться на вектор (4, 0) перо окажется в точке (х + 4, у + 2). Чтобы из этой точки перейти в точку (х + 4, у + 0), следует выполнить команду сместиться на вектор (0, -2). По команде сместиться на вектор (-4, 0) перо Чертёжника прочертит отрезок к точке А:


Если в качестве вершины А зафиксировать точку с координатами (1, 1), то программа будет выглядеть так:

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

Для того чтобы нарисовать прямоугольник в другом месте координатной плоскости, например в точке с координатами (5, 5), достаточно изменить в этой программе только первую строку:

сместиться в точку (5, 5)

С помощью команды абсолютного смещения рисунок «привязывается» к строго определенным точкам координатной плоскости. Она используется чаще всего для установки начального положения пера Чертёжника.

Команды относительного смещения применяются для создания рисунков, у которых точное место не важно или которые нужно воспроизводить в разных местах.


Comments are closed.