Использованы материалы "Электронного приложения к учебному пособию «Информатика» "
Использованы материалы "Электронного приложения к учебному пособию «Информатика» "
Робот — автоматическое устройство, которое действует по заранее составленной программе.
Средой обитания исполнителя Робот является прямоугольное клетчатое поле. Размеры этого поля, как и для исполнителя Чертежник, задаются командой Field(n, m). При этом начальное положение Робота — клетка в центре поля.
Между некоторыми клетками, а также по периметру поля находятся стены. Робот может передвигаться по полю и закрашивать указанные клетки. Большой желтый квадрат означает начальное положение Робота, маленький — конечное.
Поле Робота, на котором определено положение стен, начальное и конечное положение исполнителя, называют обстановкой.
Right - Перемещает Робота вправо
Left - Перемещает Робота влево
Up - Перемещает Робота вверх
Down - Перемещает Робота вниз
Paint - Закрашивает текущую ячейку
Загрузка задания a1
для исполнителя робот (рисунок 2)
Uses Robot;
Begin
Task('a1');
End.
Робот может становиться на обычную и закрашенную клетку. Робот не может переместиться с клетки на клетку, если они разделены стеной. Робот не может переместиться за границы поля. Эти действия вызывают ошибку. Робот может закрасить уже закрашенную клетку. Такое действие ошибку не вызывает.
Рисунок 2
Три учащихся составили и выполнили алгоритм, по которому Робот закрасил все клетки пути от начальной к конечной. На каком из рисунков изображено решение данной задачи? Почему?
а)
paint; down;
right;
paint; down;
right;
paint; right;
up;
paint; right;
up;
paint;
б)
paint; down;
paint; right;
paint; down;
paint; right;
paint; right;
paint; up;
paint; right;
paint; up;
paint;
в)
ToPoint(0,3);
PenDown;
OnVector(1,0);
OnVector(0,-1);
OnVector(1,0);
OnVector(0,-1);
OnVector(1,0);
OnVector(0,1);
OnVector(1,0);
OnVector(0,1);
OnVector(1,0);
Изобразите в тетради «узор», который нарисует Робот. При каких минимальных размерах поля Робот сможет выполнить данную программу?
paint;
right; up;
paint;
right; down;
Подсказка. Воспользуйтесь вспомогательным алгоритмом.
Сохраните правильный текст программы.
Программа, записанная первым учащимся
uses Robot;
begin
Field(15,15);
paint; right;
paint; right;
paint; down;
paint; down;
paint;
down; left;
down; left;
paint; down;
paint; down;
paint; right;
paint; right;
paint; up;
paint; up;
paint; up;
left; up;
left;
paint; up;
paint; up;
end.
Программа, записанная вторым учащимся
uses Robot;
begin
Field(15,15);
paint; right;
paint; right;
paint; down;
paint; down;
paint;
down; left;
paint;
down; left;
paint; down;
paint; down;
paint; right;
paint; right;
paint; up;
paint; up;
paint; up;
left; up;
paint; up;
paint; up;
end.
Закрасить помеченные клетки, составив процедуру.
Исправьте предложенный фрагмент кода программы и доведите решение задачи до конца.
usesRobot;procedure squere2;beginpaint;right;paint;down;paint;left;paint;up;end;beginTask('p2');squere2;right;right;right;squere2;end.