При перемещении опущенного пера за ним остается след – отрезок от предыдущего положения до нового. При перемещении поднятого пера никакого следа не остается. В начальном положении перо Чертежника всегда поднято и находится в точке (0, 0).
Система команд исполнителя «Чертежник» включает 6 команд:
опустить перо
поднять перо
сместиться в точку (X, Y)
сместиться на вектор (dX, dY)
установить цвет (цвет)
надпись (ширина, текст)
Команда «опустить перо» переводит чертежника в режим перемещения с рисованием.
Команда «поднять перо» переводит чертежника в режим перемещения без рисования. Если перо уже было поднято, то команда просто игнорируется.
Команда «сместиться в точку (x, y)» перемещает перо в точку с координатами (x, y). Не зависимо от предыдущего положения Чертежник окажется в точке с координатами (x, y). Эту команду называют командой абсолютного смещения.
Команда «сместиться на вектор (dX, dY)» перемещает перо на dX вправо и dY вверх. Если текущие координаты были (x, y), то новое положение будет (x+dX, y+dY). Т.е. координаты отсчитываются не от начала координат, а относительно текущего положение пера. Эту команду называют командой относительного смещения.
Команда «установить цвет (цвет)» устанавливает цвет пера. Допустимые цвета: «черный», «белый», «красный», «оранжевый», «желтый», «зеленый», «голубой», «синий», «фиолетовый».
Команда «надпись (ширина, текст)» выводит на чертеж текст, начиная от текущей позиции пера. В конце выполнения команды перо находится на правой нижней границе текста (включая отступ после последнего символа). Ширина знакоместа измеряется в условных единицах чертежника. Это ширина буквы вместе с отступом после нее.
При использовании исполнителя Чертежник программа должна начинаться со строчки «использовать Чертежник».
Задача: Составим алгоритм рисования квадрата. После рисования вернем Чертежника в исходную позицию.
Четрежник - квадрат
Для перемещения можно использовать две команды — «сместиться в точку» и «сместиться на вектор». Запишем, для примера, два алгоритма — в одном будем использовать только первую команду, в другом только вторую.
Прежде чем Чертежник начнет рисовать (опустит перо) нужно сместится к место рисования. После рисования нужно снова поднять перо и перейти в начало координат (так требуется по условию).
Рисовать будем с нижней левой точки по часовой стрелке.
Пример 1. Пример 2.
использовать Чертежник
алг квадрат1
нач
. сместиться в точку(2,1)
. опустить перо
. сместиться в точку(2,4)
. сместиться в точку(5,4)
. сместиться в точку(5,1)
. сместиться в точку(2,1)
. поднять перо
. сместиться в точку(0,0)
кон использовать Чертежник
алг квадрат2
нач
. сместиться на вектор(2,1)
. опустить перо
. сместиться на вектор(0,3)
. сместиться на вектор(3,0)
. сместиться на вектор(0,-3)
. сместиться на вектор(-3,0)
. поднять перо
. сместиться на вектор(-2,-1)
кон
Обычно в программах используют эти две команды одновременно, все зависит от условий задачи и предпочтения составителя алгоритма. Например, можно записать алгоритма так:
Пример 3:
использовать Чертежник
алг квадрат3
нач
. сместиться в точку(2,1)
. опустить перо
. сместиться на вектор(0,3)
. сместиться на вектор(3,0)
. сместиться на вектор(0,-3)
. сместиться на вектор(-3,0)
. поднять перо
. сместиться в точку(0,0)
кон
Обратите внимание - исполнитель выполняет действия последовательно, одно за другим в том порядке в котором они следуют. Такой алгоритм называется линейным.
блок-схема линейный алгоритм
Задание: Составьте подобным образом алгоритмы рисования прямоугольника.
Чертежник - прямоугольник
Задание: Составьте алгоритм рисования рисунка:
Задание - домик и елка
Оглавление