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

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

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

Условие

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

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

вверх | вниз | влево | вправо | При выполнении этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у той клетки, где находится РОБОТ:сверху

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

ЦиклПОКА <условие> командавыполняется, пока условие истинно, иначе происходит переход на следующую строку.

Если РОБОТ начнёт движение в сторону стены, то он разрушится, и программа прервётся.

Сколько клеток приведенного лабиринта соответствует требованию, что, выполнив предложенную ниже программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение? НАЧАЛОПОКА <справа свободно> вверхПОКА <сверху свободно> влевоПОКА <слева свободно> внизПОКА <снизу свободно> вправоКОНЕЦ

Ответ

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

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

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

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

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

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

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

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

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

  4. Проверим каждую оставшуюся клетку…

  5. Обратим внимание, что возможны зацикливания…

  6. Получим четыре клетки В3, Г2, Б5, Д5…

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

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

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