2.Где-то в поле Робота находится горизонтальный коридор шириной в одну клетку неизвестной длины. Робот из верхнего левого угла поля должен дойти до коридора и закрасить клетки внутри него, как показано на рисунке. По Полю Робота в произвольном порядке располагаются стены, но расстояние между ними больше одной клетки.

использовать Робот
цел н=0
алг нач
нц
нц пока справа свободно
если снизу свободно то выход всё
вправо
кц
если справа стена и снизу стена то выход всё
вниз
нц пока слева свободно; влево кц
нц пока справа свободно
если сверху стена и снизу стена то закрасить; н:=1 всё
вправо
кц
если н=1 то выход всё
нц пока слева свободно; влево кц
кц
кон
Ответы
Вот программа для Кумира. Выполняет задачу, предполагая следующее:
1) задача- закрасить только клетки в коридоре
2) коридор- это зазор в 1 клетку между двумя стенками
3) раз сказано только об одном коридоре и что остальные расстояния между стенами больше клетки, то имеющийся зазор в 1 клетку между стенкой и внешней границой поля (см.верх рисунка) не считается ни расстоянием между стенами, ни коридором (и значит, коридор не может прилегать границам поля, и клетки у них надо пропускать и не закрашивать). Для пропуска верхних клеток- переход на следующую строку сделан в начале основного цикла, для пропуска нижних клеток сделан выход в строке, где был закрашен коридор.
использовать Робот
цел к=0
алг нач
нц
нц пока справа свободно
если снизу свободно то выход всё
вправо
кц
вниз
нц пока слева свободно; влево кц
нц
если сверху стена и снизу стена то закрасить; к:=1 всё
если справа свободно то вправо иначе выход всё
кц
нц пока слева свободно; влево кц
кц при к=1
кон
