Что такое сместиться на вектор
§ 18. Управление исполнителем Чертёжник
Знакомимся с Чертёжником
Исполнитель Чертёжник предназначен для построения рисунков на координатной плоскости.
При задании точек этой координатной плоскости, в отличие от того, как это принято в математике, координаты хну разделяются запятой. Например, координаты выделенной на рис. 63 точки будут записаны так: (1, 1).
Чертёжник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остаётся след — отрезок от предыдущего положения пера до нового. При перемещении поднятого пера никакого следа на плоскости не остаётся. В начальном положении перо Чертёжника всегда поднято и находится в точке (0, 0).
По команде поднять перо Чертёжник поднимает перо. Если перо уже было поднято, Чертёжник игнорирует эту команду: он не меняет положение пера и не сообщает об отказе. Иначе говоря, каким бы ни было положение пера до команды поднять перо, после этой команды оно будет поднятым.
Точно так же, независимо от первоначального положения, после выполнения команды опустить перо оно оказывается опущенным, т. е. готовым к рисованию.
Рисунки Чертёжник выполняет с помощью команд сместиться в точку и сдвинуться на вектор.
По команде сместиться в точку (а, b) Чертёжник сдвигается в точку с координатами (а, b). На рисунке 64 показаны результаты выполнения команды сместиться в точку (2, 3) при различных положениях пера до этой команды. Видно, что, независимо от предыдущего положения, перо оказывается в точке (2, 3), но длина и направление отрезка, который при этом чертится, могут быть различны. Команду сместиться в точку называют командой абсолютного смещения.
Назовите координаты точек, в которых находился Чертёжник до выполнения команды сместиться в точку (2, 3) (см. рис. 64).
В каком случае в результате выполнения команды сместиться в точку (2, 3) из некотрого показанного на рис. 64 начального положения не будет прочерчен ни один отрезок?
Пусть перо Чертёжника находится в точке (x, у). По команде сместиться на вектор (а, b) Чертёжник отсчитывает а единиц вправо вдоль горизонтальной оси (оси абсцисс), b единиц вверх вдоль вертикальной оси (оси ординат) и сдвигает перо в точку с координатами (х + а; у + b). Таким образом, координаты, указанные в команде, отсчитываются не от начала координат, а относительно текущего положения пера Чертежника. Поэтому команду сместиться на вектор называют командой относительного смещения.
На рисунке 65 показаны результаты выполнения команды сместиться на вектор (2, 3) при различных положениях пера до этой команды. Из рисунка видно, что положение пера после этой команды зависит от его предыдущего положения, зато в результате получаются отрезки, длина и направление которых одинаковы.
В математике направленные отрезки называются векторами, отсюда и происходит название команды.
Назовите координаты точек, в которых находилось перо Чертёжника до выполнения команды сместиться на вектор (2, 3) и куда оно переместилось после выполнения этой команды.
Как будет выполняться команда сместиться на вектор (а, b), если:
Служебные слова нц и кц пишутся одно под другим. Чуть правее между ними записывается повторяющаяся последовательность команд (тело цикла). Число повторений — произвольное целое число. Именно столько раз при выполнении алгоритма будут повторены команды, образующие тело цикла.
Предложите вариант решения задачи о почтовом индексе Красноярска с использованием конструкции повторения.
Можно ли обойтись без вспомогательного алгоритма в следующих ситуациях (рис. 72)?
Исполнитель Чертежник
Круг решаемых задач: предназначен для построения рисунков, чертежей и графиков, состоящих из прямых линий.
Среда исполнителя: Чертежник действует на координатной плоскости. Начальное положение пера в начале координат (в точке с координатами (0,0)).
Система команд исполнителя:
сместиться в точку (арг вещ х,у),
сместиться на вектор (арг вещ х,у),
Команда выбрать чернила задает цвет пера: ”черный”, ”белый”, ”красный”, ”оранжевый”, ”желтый”, ”зеленый”, ”голубой”, ”синий”, ”фиолетовый”. По умолчанию используется черный цвет. Название цвета пишется без кавычек.
При смещении на вектор изменяются координаты х, у на числа, указанные в команде
Линейные алгоритмы представляют собой последовательность команд, следующих друг за другом. Рассмотрим на примере трапеции.
Запишем алгоритм рисования трапеции в абсолютных величинах, используя команду сместиться в точку (рис. 1).
Но если мы захотим переместить эту трапецию из первой четверти во вторую, то нам придется изменять все координаты, что не рационально, поэтому воспользуемся командой сместиться на вектор (рис.2). И далее для составления алгоритмов будем пользоваться ей.
Во втором варианте для перемещения трапеции необходимо поменять координаты только первой команды, что эффективнее чем в первом варианте.
рис. 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
. сместиться в точку (2,1)
. сместиться на вектор (0,3)
. сместиться на вектор (3,0)
. сместиться на вектор (0,-3)
. сместиться на вектор (-3,0)
. сместиться в точку (0,0)
При создании «средних» по размеру программ используется структурное программирование, идея которого заключается в том, что структура программы должна отражать структуру решаемой задачи, чтобы алгоритм решения был ясно виден из исходного текста. Программа разбивается на множество подпрограмм (вспомогательных алгоритмов), каждая из которых выполняет какое-то действие, предусмотренное исходным заданием.
Там, где какие-то части программы повторяются (используются) несколько раз, удобно использовать вспомогательные алгоритмы.
Обратите внимание — если нам потребуется изменить алгоритм так, чтобы рисовались треугольники со стороной 4, а не 2, то при использовании вспомогательного алгоритма количество правок заметно уменьшается.
Примечание: все алгоритмы в программе на КуМире пишутся друг за другом, для удобства их можно отделять пустой строкой, главным считается алгоритм записанный первым, именно он начинает выполняться после запуска программы.Использованный нами подход облегчает программирование сложных задач. Задача разбивается на более простые подзадачи. Решение каждой оформляется в виде вспомогательного алгоритма, а основной алгоритм организует связку между ними.
Что такое сместиться на вектор
2671 days since
Начала учебного года
Recent site activity
Tips and tricks
1 Знакомимся с Чертежником
Исполнитель Чертежник предназначен для построения рисунков на координатной плоскости. Чертежник имеет перо, которое можно подымать, опускать и перемещать.
При перемещении опущенного пера за ним остается след – отрезок от предыдущего положения до нового. При перемещении поднятого пера никакого следа не остается. В начальном положении перо Чертежника всегда поднято и находится в точке (0, 0).
Система команд исполнителя «Чертежник» включает 6 команд:
Команда «опустить перо» переводит чертежника в режим перемещения с рисованием.
Команда «поднять перо» переводит чертежника в режим перемещения без рисования. Если перо уже было поднято, то команда просто игнорируется.
Команда «сместиться в точку (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
нач
. сместиться в точку (2,1)
. опустить перо
. сместиться на вектор (0,3)
. сместиться на вектор (3,0)
. сместиться на вектор (0,-3)
. сместиться на вектор (-3,0)
. поднять перо
. сместиться в точку (0,0)
кон
Исполнитель Чертёжник. Пример алгоритма управления Чертёжником
Урок 29. Информатика 6 класс ФГОС
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобрев в каталоге.
Получите невероятные возможности
Конспект урока «Исполнитель Чертёжник. Пример алгоритма управления Чертёжником»
· алгоритм под управлением чертёжника.
На прошлых уроках мы узнали, что существует множество исполнителей и различные формы записи алгоритмов. Для формальных исполнителей алгоритмы записывают в виде программ.
На этом уроке мы познакомимся с исполнителем Чертёжник. С его помощью можно изображать рисунки на координатной плоскости.
Рассмотрим рабочее поле чертёжника.
Рабочим полем чертёжника является декартова система координат, координаты точек, в которой задаются, как и в математической, но разделяются при этом запятой, т.е. точка с координатами (2;3) у чертёжника будет записываться следующим образом.
Если координата точки имеет дробную часть, она отделяется от целой точки. Главным инструментом чертёжника является перо. В начале работы оно находится в точке (0,0), и поднято.
Существует 4 основных команды исполнителя «Чертёжник»:
сместиться в точку;
сместиться на вектор.
Рассмотрим каждую из них.
По команде «опустить перо» цвет пера чертёжника изменится на чёрный. А при перемещении оно начнёт чертить прямую линию от своего предыдущего положения до нынешнего. Если до этого перо было опушено, команда игнорируется.
Есть и противоположная команда.
По команде «поднять перо» перо чертёжника становится белым. И при перемещении перо не оставляет следов. Если до этого перо было поднято – команда игнорируется.
Посмотрим, как выполняются эти команды. Вот что происходит, если опустить перо и переместить его в точку (3,3). Поднять перо и переместить его в точку (6,6).
Так же чертёжник может выполнять 2 команды перемещения
На пример: результатом выполнения команд:
сместиться в точку (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)
Теперь для изменения положения прямоугольника достаточно изменить первую команду.
Из решённых задач можно сделать вывод:
Команда абсолютного смещения служит для привязки рисунка, к определённым точкам координатной плоскости. Обычно ее используют для установки начального положения чертёжника.
Команда относительного смещения используется, когда положение рисунка не важно.
На этом уроке мы познакомились с исполнителем Чертёжник. Напомним наиболее важные моменты урока:
С помощью Чертёжника можно строить рисунки на координатной плоскости.
Что такое сместиться на вектор
Исполнитель Чертёжник предназначен для построения рисунков на координатной плоскости.
При задании точек этой координатной плоскости, в отличие от того, как это принято в математике, координаты х и у разделяются запятой.
Чертёжник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остаётся след — отрезок от предыдущего положения пера до нового. При перемещении поднятого пера никакого следа на плоскости не остаётся. В начальном положении перо Чертёжника всегда поднято и находится в точке (0, 0).
По команде поднять перо Чертёжник поднимает перо. Если перо уже было поднято, Чертёжник игнорирует эту команду: он не меняет положение пера и не сообщает об отказе. Иначе говоря, каким бы ни было положение пера до команды поднять перо, после этой команды оно будет поднятым.
Точно так же, независимо от первоначального положения, после выполнения команды опустить перо оно оказывается опущенным, т. е. готовым к рисованию.
Рисунки Чертёжник выполняет с помощью команд сместиться в точку и сдвинуться на вектор.
По команде сместиться в точку (а, b ) Чертёжник сдвигается в точку с координатами (а, b ).
На рисунке показаны результаты выполнения команды сместиться в точку (2, 3) при различных положениях пера до этой команды. Видно, что, независимо от предыдущего положения, перо оказывается в точке (2, 3), но длина и направление отрезка, который при этом чертится, могут быть различны. Команду сместиться в точку называют командой абсолютного смещения.
Команду СМЕСТИТЬСЯ НА ВЕКТОР (а, b ) называют командой относительного смещения.
По команде сместиться на вектор (а, b ) Чертёжник отсчитывает а единиц вправо вдоль горизонтальной оси (оси абсцисс), b единиц вверх вдоль вертикальной оси (оси ординат) и сдвигает перо в точку с координатами (х + а; у + b ). Таким образом, координаты, указанные в команде, отсчитываются не от начала координат, а относительно текущего положения пера Чертежника.
На рисунке показаны результаты выполнения команды сместиться на вектор (2, 3) при различных положениях пера до этой команды. Из рисунка видно, что положение пера после этой команды зависит от его предыдущего положения, зато в результате получаются отрезки, длина и направление которых одинаковы.
В математике направленные отрезки называются векторами, отсюда и происходит название команды.
Чертёжник может исполнять только правильно записанные команды. Например, если вместо команды сместиться на вектор написать сдвинь на вектор, то Чертёжник эту запись не поймёт
и сразу же сообщит об ошибке. Ошибки в записи команд называются синтаксическими.
Алгоритм может содержать логические ошибки. Например, все команды могут быть записаны правильно, но в результате логической ошибки последовательность их выполнения не будет приводить к поставленной цели или выполнение некоторых команд приведёт к отказу.
А теперь составим такой алгоритм управления Чертёжником, чтобы с его помощью в произвольном месте координатной плоскости можно было нарисовать прямоугольник со сторонами, параллельными координатным осям, длины которых равны 2 и 4 единицам.
Зафиксируем одну из вершин прямоугольника в точке (1, 1). Нужный рисунок на координатной плоскости может выглядеть, как показано
Предложите другой вариант рисунка, удовлетворяющий заданным условиям: одна из вершин прямоугольника расположена в точке (1, 1), а длины его сторон равны 2 и 4 единицам. (Существуют ещё семь вариантов.) Можно определить координаты каждой из вершин этого прямоугольника и для его изображения составить следующую программу:
Предложите другой вариант рисунка, удовлетворяющий заданным условиям: одна из вершин прямоугольника расположена в точке (1, 1), а длины его сторон равны 2 и 4 единицам. (Существуют ещё семь вариантов.) Можно определить координаты каждой из вершин этого прямоугольника и для его изображения составить следующую программу:
Изменение координат одной из вершин повлечёт за собой пересчет координат всех вершин прямоугольника. Причём это придется делать самому разработчику алгоритма. Воспользуемся для рисования прямоугольника командой относительного смещения.
Пусть (х, у) — координаты вершины А прямоугольника ABCD. Тогда координаты вершины В можно записать как (х, у + 2), вершины С — как (х + 4, у + 2), вершины D — как (х + 4, у) смотрите рисунок ниже
Чтобы изобразить отрезок АВ, воспользуемся командой сместиться на вектор (О, 2).
Начертить цифру ноль.
Цикл ПОВТОРИТЬ n РАЗ
Необходимо нарисовать вот такой рисунок из пяти одинаковых ромбов
Рисование ромба можно оформить в виде вспомогательного алгоритма:
Тогда основной алгоритм будет выглядеть так:
СМЕСТИТЬСЯ В ТОЧКУ (1, 2)
СМЕСТИТЬСЯ НА ВЕКТОР (1, 2)
СМЕСТИТЬСЯ НА ВЕКТОР (-1, 2)
СМЕСТИТЬСЯ НА ВЕКТОР (3, 0)
Служебные слова нц и кц пишутся одно под другим. Чуть правее между ними записывается повторяющаяся последовательность команд (тело цикла). Число повторений — произвольное целое число. Именно столько раз при выполнении алгоритма будут повторены команды, образующие тело цикла.