Вопросы занятия:
· исполнитель;
· чертёжник;
· алгоритм под управлением чертёжника.
На прошлых уроках мы узнали, что существует множество исполнителей и различные формы записи алгоритмов. Для формальных исполнителей алгоритмы записывают в виде программ.
На этом уроке мы познакомимся с исполнителем Чертёжник. С его помощью можно изображать рисунки на координатной плоскости.
Чтобы начать работу с чертёжником мы должны войти с систему КуМир и в первой строке появившегося рабочего окна набрать команду «использовать Чертёжник», в следующей строке набрать служебное слово «алг» - сокращённо от слова «алгоритм». Программа всегда начинается со служебного слова «нач» - сокращённо от слова «начало» и заканчивается служебным словом «кон» сокращённо от слова «конец». Чтобы запустить программу на выполнение необходимо нажать клавишу F9.
Рассмотрим рабочее поле чертёжника.
Рабочим полем чертёжника является декартова система координат, координаты точек, в которой задаются, как и в математической, но разделяются при этом запятой, т.е. точка с координатами (2;3) у чертёжника будет записываться следующим образом.
Если координата точки имеет дробную часть, она отделяется от целой точки. Главным инструментом чертёжника является перо. В начале работы оно находится в точке (0,0), и поднято.
Существует 4 основных команды исполнителя «Чертёжник»:
Опустить перо;
поднять перо;
сместиться в точку;
сместиться на вектор.
Рассмотрим каждую из них.
По команде «опустить перо» цвет пера чертёжника изменится на чёрный. А при перемещении оно начнёт чертить прямую линию от своего предыдущего положения до нынешнего. Если до этого перо было опушено, команда игнорируется.
Есть и противоположная команда.
По команде «поднять перо» перо чертёжника становится белым. И при перемещении перо не оставляет следов. Если до этого перо было поднято – команда игнорируется.
Посмотрим, как выполняются эти команды. Вот что происходит, если опустить перо и переместить его в точку (3,3). Поднять перо и переместить его в точку (6,6).
Так же чертёжник может выполнять 2 команды перемещения
«Сместиться в точку». По этой команде Чертёжник перемещается в заданную точку координатной плоскости. Если чертёжник, уже находится в заданной точке – команда игнорируется. Так если задать чертёжнику команду «Сместиться в точку (x,y)» - после ее выполнения чертёжник окажется именно в этой точке координатной плоскости. Данную команду так же называют командой абсолютного смещения.
На пример: результатом выполнения команд:
опустить перо
сместиться в точку (3,4)
Будет следующий рисунок.
Ещё одна команда для перемещения: «сместиться на вектор».
Вектор – это отрезок, заданного направления и длины
По этой команде чертёжник перемежается из текущего положения на заданное количество единиц по оси абсцисс и оси ординат. Так, находясь в точке с координатами (x,y) при выполнении команды «Сместиться на вектор (i,j)»
чертёжник переместиться в точку с координатами (x+i, y+j). Данную команду так же называют командой относительного смещения.
Так уже знакомый нам рисунок можно изобразить, задав другую программу:
опустить перо
сместиться на вектор (3,4)
Чертёжник выполняет только команды, которые записаны правильно.
В ходе написания программы могут быть допущены синтаксические ошибки и логические ошибки.
Так если вместо команды «сместиться в точку», мы запишем команду «сдвинься в точку» - последует отказ исполнителя, потому что Чертёжник не знает такой команды.
При логических ошибках команды могут быть записаны правильно, их выполнение не будет приводить к нужному результату.
А теперь сами попробуем составить несколько алгоритмов для чертёжника:
Изобразим ромб с вершинами в точках (1,3), (2,5), (3,3), (2, 1).
Так как, в начале работы, чертёжник находится в точке (0, 0) и его перо поднято, для выполнения данной задачи необходимо сначала, установить чертёжника в одну из вершин ромба, и опустить перо. Зададим Чертёжнику соответствующие команды.
сместиться в точку (1,3)
опустить перо
Далее мы будем рисовать стороны ромба, обходя его вершины. Для этого нам достаточно задать Чертёжнику команды:
сместиться в точку (2,5)
сместиться в точку (3,3)
сместиться в точку (2,1)
сместиться в точку (1,3)
Запустим программу на выполнение
Так мы составили программу, для рисования фигуры по фиксированным точкам, теперь рассмотрим другую задачу.
Изобразим прямоугольник, длиной 5 и шириной 3, со сторонами параллельными осям координат.
На координатной плоскости данный прямоугольник должен выглядеть так.
Мы можем зафиксировать одну из вершин прямоугольника в точке (2, 1), рассчитать расположение остальных его вершин, после чего нарисовать стороны прямоугольника путём обхода его по вершинам. Можно записать этот алгоритм для чертёжника в виде программы:
сместиться в точку (2,1)
опустить перо
сместиться в точку (2,4)
сместиться в точку (7,4)
сместиться в точку (7,1)
сместиться в точку (2,1)
Результатом ее выполнения будет рисунок…
Но данный алгоритм будет работать лишь до тех пор, пока первая вершина прямоугольника находится в точке (2, 1). Если зафиксировать первую вершину в другом месте, то и остальные вершины должны изменить своё положение.
Поэтому данную задачу мы будем решать иначе.
Обозначим данный прямоугольник ABCD, где А – его первая вершина. Пусть она имеет координаты (x,y), так как ширина прямоугольника 3, вершина B должна находиться на 3 единицы выше вершины А, следовательно, она будет иметь координаты (x, y+3). Так как длина прямоугольника 5, вершина C – должна находиться на 5 единиц правее вершины B, тогда её координаты (x+5, y+3). Так как вершина D должна быть на 3 единицы ниже вершины С, ее координаты (x+5, y).
Для примера мы установим первую вершину прямоугольника в точке (1, 1)
Так как вершина B, находится на 3 единицы выше вершины A, чтобы построить отрезок AB, мы используем команду «Сместиться на вектор (0, 3)». Так как вершина С на 5 единиц правее вершины B, для отрезка BC используем команду «Сместиться на вектор (5, 0)». Так как вершина D находится на три единицы ниже вершины С, для отрезка CD - команду «Сместиться на вектор (0,-3)». И так как вершина A, находится на 5 единиц левее вершины D, для отрезка DA – команду «Сместиться на вектор (-5,0)».
Теперь для изменения положения прямоугольника достаточно изменить первую команду.
Из решённых задач можно сделать вывод:
Команда абсолютного смещения служит для привязки рисунка, к определённым точкам координатной плоскости. Обычно ее используют для установки начального положения чертёжника.
Команда относительного смещения используется, когда положение рисунка не важно.
На этом уроке мы познакомились с исполнителем Чертёжник. Напомним наиболее важные моменты урока:
С помощью Чертёжника можно строить рисунки на координатной плоскости.
Чертёжник может выполнять команды:
Поднять перо
Опустить перо
Сместиться в точку
Сместиться на вектор.