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