Вопрос:

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

Фотография

Ответ ассистента

Для решения задачи Роботу необходимо пройти вдоль всего верхнего ряда, проверяя наличие закрашенной клетки под ним. Если клетка снизу закрашена, Робот должен спуститься, закрасить свою текущую клетку и вернуться обратно. **Алгоритм решения:** 1. Пока справа нет стены (свободно), выполнять: a. Если снизу стена (`wall_from_down()`), то Робот понимает, что это закрашенная клетка (по условию закрашена клетка нижнего ряда, а стенки примыкают к ней сверху). b. Выполнить `fill_cell()`. c. `move_right()`. 2. После выхода из цикла (у правой стены) проверить последнее положение: если `wall_from_down()`, выполнить `fill_cell()`. 3. Спуститься в конечную точку: `move_down()`. **Программный код:** ```python while free_from_right(): if wall_from_down(): fill_cell() move_right() if wall_from_down(): fill_cell() move_down() ```

Другие решения

Что ещё задавали пользователи