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

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

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

Условие

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

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

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

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

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

Ответ

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

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

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

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

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

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

  1. В этом цикле пока у нижней стороны клетки в…

  2. Как только это условие перестанет выполняться…

  3. Этот внутренний цикл аналогичен первому…

  4. РОБОТ при данной программе никогда не…

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

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

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