• СРОЧНО ПОМОГИТЕ!!! Где-то в поле Робота находится горизонтальная стена с отверстием в одну клетку, размеры которой неизвестны. Робот из произвольной клетки над стеной, но обязательно напротив нее, должен дойти до стены и закрасить все клетки под ней, как показано на рисунке.

    question img

Ответы 1

  • Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может.

    У Робота есть девять команд. Четыре команды – это команды-приказы, они управляют перемещениями робота:

    вверхвнизвлевовправо

    При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх  вниз  влево  вправо  Если Робот получит команду передвижения сквозь стену, то он разрушится.

    Также у Робота есть команда-приказ закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.

    Ещё четыре команды – это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:

    сверху свободноснизу свободнослева свободносправа свободно

    Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:

    если условие то

    последовательность команд

    все

    Здесь условие – одна из команд проверки условия.

    Последовательность команд – это одна или несколько любых команд-приказов.

    Например, для передвижения на одну клетку вправо, если справа нет стенки и закрашивания клетки, можно использовать такой алгоритм:

    еслисправа свободното

    вправо

    закрасить

    все

    В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:

    если(справа свободно)и(не снизу свободно)то

    вправо

    все

    Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:

    нц пока условие

    последовательность команд

    кц

    В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например: если(справа свободно)и(не снизу свободно)товправовсе.

    Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:

    нцпокасправа свободно

    вправо

    кц

    Выполните задание.

    На бесконечном поле имеется вертикальная стена. Длина стены неизвестна.

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

    На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years