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

Информатика·Выполнение алгоритмов для исполнителей·11 класс

Схема лабиринта: Сколько клеток лабиринта соответствуют требованию

Условие

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

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

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

Ответ

12

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

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

    Решение. [рисунок] При данной программе РОБОТ поступает следующим образом: сперва РОБОТ проверяет свободна ли клетка справа или снизу от него, если это так, то РОБОТ переходит к первому действию внутри цикла. В этом цикле пока снизу клетки в которой находится РОБОТ нет стены он продолжает двигаться вниз. Как только это условие перестанет выполняться он переходит ко второму действию цикла. Второе действие, заключается в следующем: РОБОТ передвигается на одну клетку вправо. После чего возвращается к началу внешнего цикла. У робота есть возможность разбиться: например, стартовав из любой клетки столбца F робот разобьётся. Проверив все клетки по выведенному нами правилу движения РОБОТА выясняем, что число клеток, удовлетворяющих условию задачи, равно

Осталось ещё 1 шаг — откроются после входа:

  • Шаг 2
Получить полное решение

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

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

Схема лабиринта: Сколько клеток лабиринта соответствуют требованию — решение с объяснением | Lom Ai