Для многократного использования одной и той же в программе для чертежника можно применять

Содержание

Исполнитель Чертёжник предназначен для построения рисунков на координатной плоскости.

При задании точек этой координатной плоскости, в отличие от того, как это принято в математике, координаты хну разделяются запятой. Например, координаты выделенной на рис. 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) , если:

Чертежник предназначен для построения рисунков на координатной плоскости.

При задании точек этой координатной плоскости, в отличие от того, как это принято в математике, координаты х и у разделяются запятой.

Например, координаты выделенной на рис. 3.1 точки будут записаны так: (1, 1).

Чертежник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след — отрезок от предыдущего положения пера до нового. При перемещении поднятого пера никакого следа на плоскости не остается. В начальном положении перо Чертежника всегда поднято и находится в точке (0, 0).

По команде подними перо Чертежник поднимает перо. Если перо уже было поднято, Чертежник игнорирует эту команду: он не меняет положение пера и не сообщает об отказе. Иначе говоря, каким бы ни было положение пера до команды подними перо, после этой команды оно будет поднятым.

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

Рисунки Чертежник выполняет с помощью команд переведи в точку и сдвинь на вектор.

По команде переведи в точку (а, b) Чертежник сдвигается в точку с координатами (а, height: 108px;»>

Команда Действие подними перо Чертежник поднимает перо опусти перо Чертежник опускает перо переведи в точку (а, b) Чертежник сдвигается в точку с координатами (а, b) сдвинь на вектор (а, b) Чертежник сдвигается на вектор (а, b)

Чертежник Вспомогательные алгоритмы

Исполнитель Чертежник. Вспомогательные алгоритмы

Алгоритм, решающий некоторую подзадачу основной задачи, называется вспомогательным алгоритмом. Вспомогательный алгоритм оформляется в виде процедуры. Приказ на выполнение вспомогательного алгоритма называется вызовом процедуры и записывается в основном алгоритме.

При составлении алгоритмов довольно часто встречаются случаи, когда некоторую последовательность команд нужно выполнять несколько раз подряд. Для упрощения записи алгоритма в таких случаях можно использовать специальную конструкцию повторения — ПОВТОРИТЬ n РАЗ.

Вопросы и задания

1. Охарактеризуйте исполнителя Чертежник.

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

Читайте также:
Генетика кроя компьютерная программа отзывы

3. Составьте для Чертежника алгоритм рисования прямоугольника со сторонами, параллельными осям координат, если известны координаты его двух вершин: (2, 1) и (7, 5).

4. Составьте для Чертежника алгоритм рисования ромба, центр которого совмещен с центром экрана, диагонали лежат на координатных осях, а их длины определяются числами 8 и 4.

5. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован квадрат, длина стороны которого равна 2 единицам.

6. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован прямоугольник, длины сторон которого равны 3 и 4 единицам.

7. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован произвольный параллелограмм.

8. Составьте алгоритм рисования изображенных ниже фигур так, чтобы в процессе рисования перо не отрывалось от бумаги и ни одна линия не проводилась дважды.

9. Оформите в виде процедур алгоритмы рисования букв М, И, Р. Составьте алгоритмы рисования слов МИР, РИМ, МИМ.

10. Разработайте вспомогательный алгоритм рисования домика. На его основе составьте основной алгоритм рисования улицы из пяти домиков.

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

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

13. Придумайте свои задачи для Чертежника.

Босова Л. Л., Информатика и ИКТ: учебник для 7 класса Л. Л. Босова. М. : БИНОМ. Лаборатория знаний, 2010. 229 с. : ил.

Исполнитель Чертежник

Основные команды

Покажись

Скройся

Подними_перо

Опусти_перо

В точку (x,y)

Вектор (a,b)

Очистить

Очистить

Цвет (номер цвета)

Задание 1.

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

Начало

Переведи в точку (1,1)

Опусти перо

Переведи в точку (3,5)

Переведи в точку (5,2)

Переведи в точку (1,1)

Конец

Задание 2

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

Начало

Переведи в точку (1,1)

Опусти перо

Переведи в точку (1,3)

Переведи в точку (5,3)

Переведи в точку (5,1)

Переведи в точку (1,1)

Конец

Пусть (x,y) – координаты вершины 1.

Тогда координаты вершины 2 можно записать как (x, y+2);

вершины 3 — (x+4, y+2);

вершины 4 — (x+4, y)

Начало

Переведи в точку (1,1)

Опусти перо

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

Сдвинь на вектор (4, 0)

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

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

Конец

Задание 3.

Составьте алгоритмы для написания цифр почтового индекса:

Задание 4

Составить алгоритм рисования почтового индекса города Красноярска – 660000.

Вспомогательный алгоритм

ПРОЦ цифра_0

НАЧАЛО

опусти перо

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

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

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

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

подними перо

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

КОНЕЦ

Вспомогательный алгоритм

ПРОЦ цифра_6

НАЧАЛО

опусти перо

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

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

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

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

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

подними перо

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

КОНЕЦ

Основной алгоритм

НАЧАЛО

Переведи в точку (1,1)

Цифра_6

Цифра_6

Цифра_0

Цифра_0

Цифра_0

Цифра_0

КОНЕЦ

НАЧАЛО

Переведи в точку (1, 2)

Опусти перо

ПОВТОРИТЬ 5 РАЗ

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

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

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

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

подними перо

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

КОНЕЦ

Исполнитель Чертежник предназначен для построения рисунков на координатной плоскости. Чертежник имеет перо, которое можно подымать, опускать и перемещать.

При перемещении опущенного пера за ним остается след – отрезок от предыдущего положения до нового. При перемещении поднятого пера никакого следа не остается. В начальном положении перо Чертежника всегда поднято и находится в точке (0, 0).

Система команд исполнителя «Чертежник» включает 6 команд:

  1. опустить перо
  2. поднять перо
  3. сместиться в точку (X, Y)
  4. сместиться на вектор (dX, dY)
  5. установить цвет (цвет)
  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)
кон

Обратите внимание — исполнитель выполняет действия последовательно, одно за другим в том порядке в котором они следуют. Такой алгоритм называется линейным.

  • Как защититься от вируса Petya
  • Когда умер власик. Судебное дело И. С. Власика. Численность и состав охраны
  • Химкинское водохранилище превратилось в рыбье кладбище, всплыли тонны мертвой рыбы Что случилось на химкинском водохранилище
  • Безлимитный интернет для планшета

Источник: grumy.ru

Для многократного использования одной и той же в программе для чертежника можно применять

Ответ:

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

Но предположим, что нам нужно написать алгоритм, чтобы изобразить слово, в котором буква «А» повторяется несколько раз, на пример для слова АРАРАТ. Мы конечно можем написать длинный алгоритм, в котором последовательность команд для рисования буквы «А» будет повторяться трижды, а для буквы «Р» – дважды, но можно поступить проще.

Читайте также:
Как ускорить загрузку в epic games без сторонних программ

У Чертёжника есть инструмент для запоминания, того, как рисуется фигура, чтобы потом можно было использовать этот алгоритм повторно. Этот инструмент называется вспомогательным алгоритмом.

Вспомогательный алгоритм – это набор команд, предназначенный для решения подзадачи, который можно использовать многократно.

Так для решения данной задачи можно оформить последовательности команд для рисования буков «А» и «Р» в виде вспомогательных алгоритмов. Вспомогательный алгоритм буквы «А» будет выглядеть так. Он, как и все вспомогательные алгоритмы, записывается после основного алгоритма.

Строка «алг буква_а» называется заголовком алгоритма, а «буква_а» — его названием. Сам алгоритм рисования буквы, для простоты ориентирования в тексте программы, должен находиться правее, между служебными словами «нач» и «кон».

А теперь попробуем вместе написать вспомогательный алгоритм для рисования буквы Р.

Буква «Р» из отрезков должна выглядеть так. Она состоит из четырёх отрезков.

Сначала записываем строку заголовка «алг буква_р», далее идет служебное слово «нач» и сразу можем записать в следующей строке служебное слово «кон», далее между служебными словами «нач» и «кон», на расстоянии одного пробела от левого края поля, мы будем записывать команды для рисования самой буквы «Р». Так как перо находится в левом нижнем углу позиции для рисования буквы, мы можем сразу опустить перо и провести отрезок на 2 единицы вверх. Напишем соответствующие команды.

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

Затем напишем команды для рисования остальных трех отрезков

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

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

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

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

сместиться на вектор (2,-1)

Так у нас есть вспомогательный алгоритм для рисования буквы «Р»

Теперь мы можем написать алгоритм для рисования слова «АРАРАТ».

Вначале мы должны вызвать вспомогательный алгоритм для написания буквы «А», для этого достаточно набрать его название.

Затем вызвать вспомогательный алгоритм для буквы «Р»,

затем снова для буквы «А», затем снова для буквы «Р», снова для буквы «А» и наконец, написать команды для рисования буквы «Т».

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

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

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

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

Так, как буква «Т» — последняя буква в слове, отступ после нее можно не делать

При желании, вы можете написать вспомогательный алгоритм для изображения буквы «Т» самостоятельно.

Запустим программу на выполнение.

Рассмотрим ещё одну задачу. Написать для исполнителя чертёжник программу для рисования рисунка.

Видно, что на рисунке три раза изображён элемент треугольник. Оформим последовательность команд для изображения треугольника в виде вспомогательного алгоритма.

Назовём вспомогательный алгоритм треугольник. Условимся что перо, как и в случае с буквами будет находиться в левом нижнем углу, и будет поднято.

Будем рисовать треугольник путём его обхода по вершинам. Чтобы нарисовать треугольник чертёжник должен выполнить следующую последовательность команд:

сместиться на вектор (2,4)

сместиться на вектор (2,-4)

сместиться на вектор (-4,0)

Теперь рассмотрим алгоритм для рисования всего рисунка: для начала нам необходимо задать команду для перемещения на начальную позицию «сместиться в точку (1,1)» , затем вызвать вспомогательный алгоритм для рисования треугольника, записав название вспомогательного алгоритма, затем переместиться на начальную позицию для рисования следующего треугольника, задав команду «сместиться на вектор (4,0)», после чего снова вызвать вспомогательный алгоритм для рисования треугольника, затем переместиться на начальную позицию для рисования последнего треугольника, задав команду «сместиться на вектор (-2,4)» и наконец вызвать вспомогательный алгоритм для рисования треугольника.

Можно заметить, что данный рисунок можно рисовать, начиная с любой позиции. Для этого достаточно изменить первую команду. Так, если в начале будет команда «сместиться в точку (2,3)», результатом выполнения программы будет рисунок.

На этом уроке мы рассмотрели вспомогательные алгоритмы чертёжника. Подведём итоги урока.

Для многократного использования одной и той же последовательности команд в программе для Чертёжника можно применять вспомогательные алгоритмы.

Вспомогательный алгоритм – это набор команд, предназначенный для решения подзадачи, который можно использовать многократно.

У вспомогательного алгоритма есть заголовок и название.

В основном алгоритме вспомогательные алгоритмы вызываются по названию.

Источник: scholar.tips

§ 3.2. Управление исполнителем Чертежник

Исполнитель Чертежник предназначен для построения рисунков на координатной плоскости.

При задании точек этой координатной плоскости, в отличие от того, как это принято в математике, координаты х и у разделяются запятой. Например, координаты выделенной на рис. 3.1 точки будут записаны так: (1, 1).

Чертежник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след — отрезок от предыдущего положения пера до нового. При перемещении поднятого пера никакого следа на плоскости не остается. В начальном положении перо Чертежника всегда поднято и находится в точке (0, 0).

По команде подними перо Чертежник поднимает перо. Если перо уже было поднято, Чертежник игнорирует эту команду: он не меняет положение пера и не сообщает об отказе. Иначе говоря, каким бы ни было положение пера до команды подними перо, после этой команды оно будет поднятым.

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

Рисунки Чертежник выполняет с помощью команд переведи в точку и сдвинь на вектор.

По команде переведи в точку (а, b) Чертежник сдвигается в точку с координатами (а, b). На рис. 3.2 показаны результаты выполнения команды переведи в точку (2, 3) при различных положениях пера до этой команды. Видно, что независимо от предыдущего положения перо оказывается в точке (2, 3), но длина и направление отрезка, который при этом чертится, могут быть различны. Команду переведи в точку называют командой абсолютного смещения.

  • Назовите координаты точек, в которых находился Чертежник до выполнения команды переведи в точку (2, 3) .
  • В каком случае в результате выполнения команды переведи в точку (2, 3) из различных показанных на рис. 3.2 начальных положений не будет прочерчен ни один отрезок?

Пусть перо Чертежника находится в точке (х, y). По команде сдвинь на вектор (а, b) Чертежник отсчитывает а единиц вправо вдоль горизонтальной оси (оси абсцисс), Ь единиц вверх вдоль вертикальной оси (оси ординат) и сдвигает перо в точку с координатами (х — а; у + b). Таким образом, координаты, указанные в команде, отсчитываются не от начала координат, а относительно текущего положения пера Чертежника. Поэтому команду сдвинь на вектор называют командой относительного смещения.

На рис. 3.3 показаны результаты выполнения команды сдвинь на вектор (2, 3) при различных положениях пера до этой команды. Из рисунка видно, что положение пера после этой команды зависит от его предыдущего положения, зато в результате получаются отрезки, длина и направление которых одинаковы. В математике направленные отрезки называются векторами, отсюда и происходит название команды.

    Как будет выполняться команда сдвинь на вектор (а, b), если:
    а) а < 0;
    б) b < 0;
    в) а < 0 и b < 0?

Чертежник может исполнять только правильно записанные команды. Например, если вместо команды сдвинь на вектор написать здвинь на вектор, то Чертежник эту запись не поймет и сразу же сообщит об ошибке. Ошибки в записи команд называются синтаксическими.

Читайте также:
Как запустить программу onenote

Алгоритм может содержать логические ошибки. Например, все команды записаны правильно, но последовательность их выполнения не приводит к поставленной цели или выполнение некоторых команд приводит к отказу.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    опусти перо
    сдвинь на вектор (0, 2)
    сдвинь на вектор (1, 0)
    сдвинь на вектор (0, -2)
    сдвинь на вектор (-1, 0)
    подними перо
    сдвинь на вектор (2, 0)
    сдвинь на вектор (1, 2)
    опусти перо
    сдвинь на вектор (-1, -1)
    сдвинь на вектор (1, 0)
    сдвинь на вектор (0, -1)
    сдвинь на вектор (-1, 0)
    сдвинь на вектор (0, 1)
    подними перо
    сдвинь на вектор (2, -1)
  • Для чего нужна последняя команда?

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

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

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

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

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

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

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

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

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

Цикл ПОВТОРИТЬ n РАЗ

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

Например, основной алгоритм рисования ряда из пяти ромбов (рис. 3.10) с помощью конструкции повторения можно записать так:

Можно рисование ромба оформить в виде отдельной процедуры:

Тогда основной алгоритм будет выглядеть так:

В общем виде конструкция повторения записывается так:

  • Предложите вариант решения задачи о почтовом индексе Красноярска с использованием конструкции повторения.
  • Можно ли обойтись без вспомогательного алгоритма в следующих ситуациях?

Коротко о главном

Исполнитель Чертежник предназначен для построения рисунков на координатной плоскости.

Система команд исполнителя представлена в следующей таблице:

Алгоритм, решающий некоторую подзадачу основной задачи, называется вспомогательным алгоритмом. Вспомогательный алгоритм оформляется в виде процедуры. Приказ на выполнение вспомогательного алгоритма называется вызовом процедуры и записывается в основном алгоритме.

При составлении алгоритмов довольно часто встречаются случаи, когда некоторую последовательность команд нужно выполнять несколько раз подряд. Для упрощения записи алгоритма в таких случаях можно использовать специальную конструкцию повторения — ПОВТОРИТЬ n РАЗ.

Вопросы и задания

  1. Охарактеризуйте исполнителя Чертежник.
  2. Составьте для Чертежника алгоритм рисования равнобедренного треугольника, если известны координаты концов отрезка, являющегося его высотой: (4, 1) и (4, 6), а также координаты (2, 1) одной из его вершин.
  3. Составьте для Чертежника алгоритм рисования прямоугольника со сторонами, параллельными осям координат, если известны координаты его двух вершин: (2, 1) и (7, 5).
  4. Составьте для Чертежника алгоритм рисования ромба, центр которого совмещен с центром экрана, диагонали лежат на координатных осях, а их длины определяются числами 8 и 4.
  5. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован квадрат, длина стороны которого равна 2 единицам.
  6. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован прямоугольник, длины сторон которого равны 3 и 4 единицам.
  7. Составьте алгоритм управления Чертежником, в результате выполнения которого в произвольном месте координатной плоскости будет нарисован произвольный параллелограмм.
  8. Составьте алгоритм рисования изображенных ниже фигур так, чтобы в процессе рисования перо не отрывалось от бумаги и ни одна линия не проводилась дважды.

Оформите в виде процедур алгоритмы рисования букв М, И, Р. Составьте алгоритмы рисования слов МИР, РИМ, МИМ.

Разработайте вспомогательный алгоритм рисования домика. На его основе составьте основной алгоритм рисования улицы из пяти домиков.

Составьте алгоритмы управления Чертежником, после исполнения которых будут получены следующие рисунки:

Составьте алгоритмы управления Чертежником, после исполнения которых будут получены следующие рисунки:

  • Придумайте свои задачи для Чертежника.
  • Источник: tepka.ru

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...
    EFT-Soft.ru