Использованы материалы "Электронного приложения к учебному пособию «Информатика» "
Использованы материалы "Электронного приложения к учебному пособию «Информатика» "
Робот — автоматическое устройство, которое действует по заранее составленной программе.
Средой обитания исполнителя Робот является прямоугольное клетчатое поле. Размеры этого поля, как и для исполнителя Чертежник, задаются командой Field(n, m). При этом начальное положение Робота — клетка в центре поля.
Между некоторыми клетками, а также по периметру поля находятся стены. Робот может передвигаться по полю и закрашивать указанные клетки. Большой желтый квадрат означает начальное положение Робота, маленький — конечное.
Поле Робота, на котором определено положение стен, начальное и конечное положение исполнителя, называют обстановкой.
Команда | Описание
move_left(n=1) | Пройти n клеток влево (по умолчанию n = 1)
move_right(n=1) | Пройти n клеток вправо (по умолчанию n = 1)
move_up(n=1) | Пройти n клеток вверх (по умолчанию n = 1)
move_down(n=1) | Пройти n клеток вниз (по умолчанию n = 1)
wall_is_above() | если сверху стена, возвращает True, иначе — False
wall_is_beneath() | если снизу стена, возвращает True, иначе — False
wall_is_on_the_left() | если слева стена, возвращает True, иначе — False
wall_is_on_the_right() | если справа стена, возвращает True, иначе — False
fill_cell() | Закрасить текущую клетку
cell_is_filled() | Возвращает True, если текущая клетка закрашена
mov(r, v) | Поместить значение v в регистр r
Три учащихся составили и выполнили алгоритм, по которому Робот закрасил все клетки пути от начальной к конечной. На каком из рисунков изображено решение данной задачи? Почему?
а)
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.