Задание 14. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
При выполнении этих команд РОБОТ перемещается на одну клетку соответственно: вверх, вниз, влево, вправо.
Четыре команды проверяют истинность условия отсутствия стены у той клетки, где находится РОБОТ:
Цикл
ПОКА <условие> команда
выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Если РОБОТ начнёт движение в сторону стены, то он разрушится и программа прервётся.
Сколько клеток приведённого лабиринта соответствует требованию, что, выполнив предложенную ниже программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА < сверху свободно > вправо
ПОКА < справа свободно > вниз
ПОКА < снизу свободно > влево
ПОКА < слева свободно > вверх
КОНЕЦ
Решение.
На рисунке ниже синей точкой показана стартовая клетка, начиная с которой, робот переместится сначала вниз (красная стрелка), а затем, вновь поднимется вверх к точке начала.
В этом можно убедиться, используя программу робота, представленную выше, и, кроме того, можно заметить, что такая клетка единственная во всем лабиринте.
Ответ: 1.
Другие задания:
Для наших пользователей доступны следующие материалы: