1. Главная
  2. Библиотека
  3. Информационные технологии
  4. Система команд исполнителя РОБОТ, «живущего» в прямоуго...
Разбор задачи

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

  • Предмет: Информационные технологии
  • Автор: Кэмп
  • #Программирование (языки C++, Java, Python и др.)
  • #Алгоритмы и структуры данных
Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости: При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх , вниз , влево , вправо . Четыре команды проверяют истинность

Условие:

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

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх \uparrow, вниз \downarrow, влево \leftarrow, вправо \rightarrow. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

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

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

Решение:

Исходные замечания. Робот действует в прямоугольном лабиринте, где на каждой клетке имеются четыре стороны. Если сторона свободна (то есть к ней нет стены), то соответствующая проверочная команда возвращает «истину».

Команда робота выполняется так:

  1. Команда HAYAJO – она задаёт начало исполнения (она не перемещает робота, а служит входной точкой программы).
  2. Затем цикл «ПОКА <справа свободно> вправо». То есть, пока справа от клетки отсутствует стена, робот сдвигается вправо. Он движется по строке до тех пор, пока не окажется в клетке, у которой справа стена...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

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

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет