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

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

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

Условие

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, включает в себя 4 команды-приказа и 4 команды проверки условия. Команды-приказы: вверх, вниз, влево, вправо. При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится, и программа прервётся. Другие 4 команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл ПОКА условие последовательность командКОНЕЦ ПОКА выполняется, пока условие истинно. В конструкции ЕСЛИ условие ТО команда1ИНАЧЕ команда2КОНЕЦ ЕСЛИ выполняется команда1 (если условие истинно) или команда2 (если условие ложно). Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка A6)?

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

НАЧАЛО ПОКА слева свободно ИЛИ снизу свободно ЕСЛИ слева свободно ТО влевоИНАЧЕ внизКОНЕЦ ЕСЛИКОНЕЦ ПОКАКОНЕЦ

Ответ

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

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

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

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

    Решение. [рисунок] В данной программе РОБОТ поступает следующим образом: сперва РОБОТ проверяет, свободна ли клетка слева или снизу от него.

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

  1. Если это так, то РОБОТ переходит к первому…

  2. В этом цикле если у левой стороны клетки, в…

  3. После этого возвращается к началу внешнего…

  4. Проанализировав эту программу, приходим к…

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

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

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