Присоединиться

11 класс·высокий уровень

Сколько клеток лабиринта соответствуют требованию, что, выполнив

Условие

Система команд исполнителя РОБОТ, «живущего» в клетках прямоугольного лабиринта на плоскости:вверх, вниз, влево, вправо.

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево←, вправо →.Четыре условия позволяют проверить отсутствие преград у каждой из сторон той клетки, где находится РОБОТ: сверху свободно, снизу свободно, слева свободно, справа свободно. В циклеПОКА <условие> командакоманда выполняется, пока условие истинно, иначе происходит переход на следующую строку программы.

Если РОБОТ начнёт движение в сторону стены рядом с которой он стоит, то робот разрушится, и выполнение программы прервётся. Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение?

Рисунок к задаче

НАЧАЛОПОКА < слева свободно > внизПОКА < снизу свободно > вправоПОКА < справа свободно > вверхПОКА < сверху свободно > влевоКОНЕЦ

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. [рисунок] Выясним, что необходимо, чтобы РОБОТ остановился в той же клетке, с которой он начал движение.

Осталось ещё 5 шагов

  1. Так как программа заканчивается командой…

  2. Этому условию удовлетворяют все клетки…

  3. Все клетки верхней стенки не подходят, так…

  4. Будем нумеровать клетки цифрами сверху вниз…

  5. Удовлетворяющими условию задачи будут клетки…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Выполнение алгоритмов для исполнителей»