Робот один из учебных исполнителей (т.е. устройств, способных выполнять определенный набор команд), для управления которыми нам предстоит научиться составлять программы.
Робот обитает на прямоугольном клетчатом поле: 15 клеток по горизонтали и 9 клеток по вертикали. Между некоторыми клетками могут быть стены, сквозь которые пройти невозможно. Клетки могут быть закрашены.
По командам |
|
||
вверх вниз вправо влево |
|||
происходит перемещение в соседнюю клетку в указанном направлении. Если при этом на пути Робота оказывается стена, наступает отказ. | |||
По команде | |||
закрасить | |||
Робот закрашивает клетку, в которой находится (даже если она уже была закрашена). |
Попробуйте составить алгоритм для решения следующей задачи (учтите,
что Вам надо уложиться в 20 команд):
Дано: Робот в левом верхнем углу поля.
Получить:
|
|
сверху стена?
|
сверху свободно?
|
||
снизу стена?
|
снизу свободно?
|
||
слева стена?
|
слева свободно?
|
||
справа стена?
|
справа свободно?
|
||
клетка закрашена?
|
клетка не закрашена?
|