Шешімі: Закрашивание горизонтального коридора
Робот находится в произвольной клетке узкого горизонтального коридора. Ширина коридора — одна клетка, длина может быть произвольной. Точное положение Робота неизвестно. Напишите алгоритм, закрашивающий все клетки внутри коридора. Конечное положение Робота может быть произвольным. При выполнении алгоритма Робот не должен разрушиться, а выполнение алгоритма должно завершиться.


Шешімін қадамдап көрсету
3 қадамСначала закрасим исходную клетку, чтобы учесть случай, когда коридор состоит из одной клетки.
Перемещаем Робота в крайнюю левую клетку коридора. Условие цикла не позволяет выполнить движение сквозь стену.
Из крайней левой клетки движемся вправо. Перед каждым перемещением закрашиваем текущую клетку, а после выхода из цикла закрашиваем крайнюю правую клетку.
закрасить
нц пока слева свободно
влево
кц
нц пока справа свободно
закрасить
вправо
кц
закрасить
Бұл жауап талдау нәтижесінде алынды, бірақ банктің ресми кілтімен тексерілген жоқ — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Не закрашивают исходную клетку до начала движения.
Пытаются двигаться влево или вправо без проверки условия.
Забывают закрасить крайнюю правую клетку после завершения движения.