Для разработки программы для Робота, использующей 3 циклических алгоритма и закрашивающую клетки, рассмотрим каждую задачу по отдельности:
12.1. Решение:
- Робот должен двигаться по горизонтальной стене вверх, закрашивая клетки, пока не достигнет верхнего конца стены.
- Затем Робот должен повернуть направо и двигаться вправо, закрашивая клетки справа от вертикальной стены.
- Затем Робот должен повернуть налево, двигаться вниз, закрашивая клетку угловую, и вернуться в исходное положение.
Псевдокод программы:
1. Пока не достигнут верхний конец горизонтальной стены:
- Двигаться вверх и закрашивать клетку
2. Повернуть направо
3. Пока клетка справа свободна:
- Двигаться вправо и закрашивать клетку
4. Повернуть налево
5. Двигаться вниз и закрашивать клетку
6. Вернуться на исходное местоположение
12.2. Решение:
Решение аналогично предыдущей задаче, однако так как размеры стен неизвестны, робот будет двигаться до тех пор, пока не достигнет конца стены.
Псевдокод программы:
1. Пока есть клетка выше горизонтальной стены:
- Двигаться вверх и закрашивать клетку
2. Повернуть направо
3. Пока клетка справа свободна:
- Двигаться вправо и закрашивать клетку
4. Повернуть налево
5. Двигаться вниз и закрашивать клетку
6. Вернуться на исходное местоположение
После выполнения этих программ Робот должен закрасить нужные клетки, не разрушившись и завершив алгоритм.