Задание 20.1 (высокий уровень)
Тема: Составление алгоритма для исполнителя Робот.
Что нужно знать:

Задания для тренировки:
На бесконечном поле есть вертикальная стена. Длина стены неизвестна. Робот находится в одной из клеток напротив стены левее её. На рисунке слева указан один из возможных способов расположения стены и Робота.

Напишите для Робота алгоритм, закрашивающий через одну клетки, расположенные правее стены и отстоящие от неё на одну незакрашенную клетку. Верхний край стены и верхняя граница самой верхней закрашенной клетки должны находиться на одном уровне. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого слева рисунка Робот должен закрасить следующие клетки (см. рисунок справа).
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стены внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.
На бесконечном поле есть горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток над стеной. На рисунке указан один из возможных способов расположения стены и Робота.

Напишите для Робота алгоритм, закрашивающий через одну клетки, расположенные непосредственно ниже стены. Самая правая клетка, примыкающая верхней своей границей к стене, должна быть закрашена. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого слева рисунка Робот должен закрасить следующие клетки (см. рисунок справа).
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стены внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.









Робот находится в верхней клетке узкого вертикального коридора. Ширина коридора – одна клетка, длина коридора может быть произвольной. Возможный вариант начального расположения Робота приведён на рисунке.
Напишите для Робота алгоритм, закрашивающий все клетки внутри коридора и возвращающий Робота в исходную позицию. Например, для приведённого слева рисунка Робот должен закрасить следующие клетки (см. рисунок справа).

Алгоритм должен решать задачу для произвольного конечного размера коридора. При исполнении алгоритма робот не должен разрушиться.