Для решения задачи с роботом, который должен закрасить клетки, расположенные справа и слева от вертикальной стены, мы можем использовать четыре циклических алгоритма в форме программы на языке Кумир.
Программа на языке Кумир для робота будет выглядеть следующим образом:
АЛГОРИТМ РешитьЗадачу
НАЧАЛО
ПОКА наступит(левая(Р) ≠ 'стена') ПОВТОРЯТЬ
закрасить()
шагнуть()
КОНЕЦ ПОКА
ПОКА наступит(правая(Р) ≠ 'стена') ПОВТОРЯТЬ
шагнуть()
закрасить()
КОНЕЦ ПОКА
КОНЕЦ
ПРОЦЕДУРА закрасить
НАЧАЛО
раскрасить(Р)
КОНЕЦ
КОНЕЦ ПРОЦЕДУРЫ
КОНЕЦ АЛГОРИТМА
Объяснение программы:
- Алгоритм начинается с двух циклов ПОКА-ПОВТОРЯТЬ: первый цикл будет двигаться влево от робота до упора в стену, а второй - вправо.
- В первом цикле, пока робот не достигнет левой границы стены, он будет выполнять команды закрасить() и шагнуть().
- После достижения левой границы стены, программа перейдет ко второму циклу, где робот будет двигаться вправо, выполняя команды шагнуть() и закрасить().
- Команда раскрасить() закрашивает текущую клетку, в которой находится робот.
Эта программа позволит роботу закрасить все клетки, которые находятся справа и слева от вертикальной стены.