Задание 5 Параграф 1.1 ГДЗ Босова 9 класс 2023 (Информатика)
На рисунке указан один из возможных вариантов расположения стены и Робота.
Задача Робота — закрасить клетки, примыкающие сверху к горизонтальным участкам стены. Например, для приведенного выше рисунка Робот должен закрасить следующие клетки.
Конечное расположение Робота может быть произвольным. Задача должна быть решена для стены, горизонтальные и вертикальный участки которой могут иметь любые размеры.
Есть план действий Робота:
1) двигаться вверх до горизонтального участка стены;
2) двигаться влево под горизонтальным участком стены и сместиться на 1 клетку левее стены;
3) занять положение над горизонтальным участком стены;
4) закрасить клетки слева направо над горизонтальным участком стены;
5) спуститься вниз вдоль вертикального участка стены;
6) закрасить клетки слева направо над горизонтальным участком стены.
Реализуйте этот план, составив алгоритм для Робота в среде КуМир.
использовать Робот
алг Стены
нач
. нц пока сверху свободно
. . вверх
. кц
. нц пока сверху не свободно
. . влево
. кц
. вверх; вправо
. нц пока снизу стена
. . закрасить; вправо
. кц
. нц пока снизу свободно
. . вниз
. кц
. нц пока снизу стена
. . закрасить; вправо
. кц
кон
Нужно составить алгоритм для Робота, который работает с любой стеной указанной формы: сначала поднимается до верхней горизонтальной части стены, затем смещается влево до выхода из-под неё, поднимается на клетку вверх, закрашивает клетки над верхним горизонтальным участком, потом спускается вдоль вертикального участка и снова закрашивает клетки над нижним горизонтальным участком.
Для этого удобно использовать циклы пока и команды перемещения Робота.
использовать Робот
алг Стены
нач
нц пока сверху свободно
вверх
кц
нц пока сверху не свободно
влево
кц
вверх; вправо
нц пока снизу стена
закрасить; вправо
кц
нц пока снизу свободно
вниз
кц
нц пока снизу стена
закрасить; вправо
кц
кон
Первый цикл поднимает Робота до стены сверху. Второй цикл сдвигает его влево под горизонтальным участком стены. Команда вверх; вправо переводит Робота в положение над стеной. Далее два цикла закрашивают клетки над горизонтальными участками стены: сначала над верхним, затем после спуска вдоль вертикального участка — над нижним.
Ответ:
использовать Робот
алг Стены
нач
нц пока сверху свободно
вверх
кц
нц пока сверху не свободно
влево
кц
вверх; вправо
нц пока снизу стена
закрасить; вправо
кц
нц пока снизу свободно
вниз
кц
нц пока снизу стена
закрасить; вправо
кц
кон