Система команд исполнителя РОБОТ, “живущего” в прямоугольном лабиринте на клетчатой плоскости:
вверх вниз влево вправо
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно (по отношению к наблюдателю): вверх ↑, вниз ↓, влево ←, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ (также по отношению к наблюдателю):
сверху
свободноснизу
свободнослева
свободносправа
свободно
Цикл
ПОКА <условие>команда
Выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток приведенного лабиринта соответствует требованию, что, выполнив предложенную ниже программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА < сверху свободно > влево
ПОКА <слева свободно> вверх
ПОКА < снизу свободно > вправо
ПОКА <справа свободно> вниз
КОНЕЦ
PDF-версии: 