Практические работы по информатике &quot;Чертежник. Практические задания с применением процедур и процедур с параметрами.&quot;

Разбор задания практической работы и критерии оценивания.

Алгоритм решения:

1. Взять один примитив (фигуру, из которой построен рисунок). Данный рисунок состоит из треугольников. Рассмотрим любой из них, например, нижний, самый большой (можно было - любой). Заметим, что цена деления в данном примере равна 0,5 (1 см = 2 клетки, значит 1 клетка - 0,5 см).

2. Выпишем координаты вершин треугольника по чертежу (сначала указывается координата х, потом у): А (2, 4.5), В (10, 4.5), С (6, 0.5). В качестве начальной для построения треугольника выбираю точку А, так как в вершины, соответствующие точке А у последующих фигур, можно переместиться с помощью одной и той же команды: сместиться на вектор (0, 1).

3. Опишем с помощью команды сместиться на вектор построение треугольника АВС, при этом рассуждаем так:

смещение из точки А в точку В: начальная точка А имеет координату х=2, конечная точка В имеет координату х=10, значит смещение по х будет равно 10 - 2 = 8 (координата конца минус координата начала); начальная точка А имеет координату у=4.5, конечная точка В имеет координату у=4,5, значит смещение по у будет равно 4.5 - 4.5 = 0. Значит, чтобы сместиться из точки А в точку В, надо выполнить команду сместиться на вектор (8, 0).

Перемещение

Начальная точка

Конечная точка

Смещение на вектор

х

у

х

у

х

у

АВ: (2, 4.5) - (10, 4.5)

2

4.5

10

4.5

10-2=8

4.5-4.5=0

ВС: (10, 4.5) - (6, 0.5)

10

4.5

6

0.5

6-10 = - 4

0.5-4.5= - 4

СА: (6, 0.5) - (2, 4.5)

6

0.5

2

4.5

2-6= - 4

4.5-0.5=4

Итак, чтобы построить треугольник АВС, надо выполнить следующие команды:

· сместиться на вектор

· сместиться на вектор

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

4. Мы видим, что в данном алгоритме присутствует два значения: 4 и 8. Дадим этим значениям имена а = 8 и б = 4. Теперь мы можем создать вспомогательный алгоритм рисования примитива, в данном случае - треугольника:

алг треугольник

нач

опустить перо

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

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

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

поднять перо

кон

Теперь при создании узора, состоящего из подобных треугольников, мы можем использовать команду Треугольник (цифра1, цифра2), и Чертежник будет обращаться к созданному вспомогательному алгоритму, подставляя нужные цифры в созданную вами "формулу" рисования.

5. Теперь мы можем написать весь алгоритм рисования Рисунка, состоящего из таких примитивов:

алг рисунок

нач

сместиться на вектор (2, 4.5) {становимся на стартовую точку А}

треугольник (8, 4) {встретив эту команду, Чертежник обратится к

вспомогательному алгоритму Треугольник, и поймет, как

выполнить эту команду, подставляя в "формулу" вместо

аргументов а и б значения 8 и 4 соответственно}

сместиться на вектор (0, 1) {становимся на стартовую точку 2го треугольника}

треугольник (7, 3.5) {рисуем 2й треугольник с размерами 7 и 3.5, размеры смотрим на чертеже}

сместиться на вектор (0, 1) {становимся на стартовую точку 3го треугольника}

треугольник (6, 3) {рисуем 3й треугольник с размерами 6 и 3, размеры смотрим на чертеже}

кон

алг треугольник

нач

опустить перо

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

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

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

поднять перо

кон

Результат работы программы:

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

6. Если фигуры имеют одинаковый размер, например, требуемый рисунок выглядел бы так:

то рисование должно быть осуществлено с помощь циклов. В данном примере нам надо

1

сместиться на стартовую позицию

2

нарисовать треугольник

а=8, б=4

Эти две команды повторяются - 1

3

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

сместиться на стартовую позицию 2

4

нарисовать треугольник

а=8, б=4

Эти две команды повторяются - 2

5

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

сместиться на стартовую позицию 3

6

нарисовать треугольник

а=8, б=4

Эти две команды повторяются - 3

7

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

Возможно, нужно нарисовать еще один ряд треугольников правее, тогда команды в пунктах 2-7 становятся телом вложенного цикла.

Так как команды

сместиться на вектор (0,1) {сместиться на новую стартовую позицию}

нарисовать треугольник {такой же}

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

Критерии оценивания.

· Как было сказано выше, алгоритмы, выполненные исключительно с использованием команд сместиться на вектор и сместиться в точку, без вспомогательного алгоритма, без циклов, приводящие к построению такого же, как в задании, рисунка оцениваются на 3;

· алгоритмы с повторяющимися фигурами одинакового размера без циклов, но со вспомогательным алгоритмом оцениваются на 4;

· алгоритмы с фигурами разного размера со вспомогательными алгоритмами

и/или

алгоритмы с фигурами одинакового размера со вспомогательными алгоритмами и циклами оцениваются на 5.

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

Вспомогательный алгоритм. Пример оформления процедуры с параметрами.

Результат работы алгоритма

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

Задание 1

Задание 2

Задание 3