СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Задания
Версия для печати и копирования в MS Word
Задание 14 № 1801

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

вверх вниз влево вправо

При выполнении этих команд РОБОТ перемещается на одну клетку соответственно: вверх, вниз, влево, вправо.

Четыре команды проверяют истинность условия отсутствия стены у той клетки, где находится РОБОТ:

сверху
свободно
снизу
свободно
слева
свободно
справа
свободно

Цикл

ПОКА < условие> команда

выполняется, пока условие истинно, иначе происходит переход на следующую строку.

Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ остановится в той же клетке, с которой он начал движение?

 

НАЧАЛО

ПОКА < снизу свободно > вниз

ПОКА < слева свободно > влево

ПОКА < сверху свободно > вверх

ПОКА < справа свободно > вправо

КОНЕЦ

Решение.

Выясним, что необходимо, чтобы РОБОТ остановился в той же клетке, с которой он начал движение. Программа заканчивается командой "ПОКА < справа свободно > вправо", следовательно, для того, чтобы робот остановился в той же клетке, с которой он начал движение, необходимо, чтобы у этой клетки была стенка справа (условие 1). Этому условию удовлетворяют все клетки правой стенки лабиринта и еще пять клеток кроме нее.

Предпоследняя команда: "ПОКА < сверху свободно > вверх", значит у клетки в которой он прекратит выполнение должно быть ограничение стенкой сверху. Кроме того, робот, прекратив выполнение этой команды, должен оказаться на одной строчке с клеткой, с которой он начал движение (условие 2).

Клеток, удовлетворяющих условиям 1 и 2, всего две: Г3 и Д1, если нумеровать цифрами сверху вниз, а буквами слева направо. Представив себе движение робота в том случае когда он стартует из этих клеток, увидим, что в них он и вернется.