СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Задания
Версия для печати и копирования в MS Word
Задание 14 № 3499

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

вверх вниз влево вправо

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

Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ (также по отношению к наблюдателю):

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

Цикл

ПОКА < условие >

последовательность команд

КОНЕЦ ПОКА

выполняется, пока условие истинно.

В конструкции

ЕСЛИ < условие >

ТО команда1

ИНАЧЕ команда2

КОНЕЦ ЕСЛИ

выполняется команда1 (если условие истинно) или команда2 (если условие ложно)

 

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

Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?

 

НАЧАЛО

ПОКА<справа свободно ИЛИ снизу свободно >

ПОКА < снизу свободно >

вниз

КОНЕЦ ПОКА

ПОКА < справа свободно >

вправо

КОНЕЦ ПОКА

КОНЕЦ ПОКА

КОНЕЦ

Решение.

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

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

Проверив все клетки по выведенному нами правилу движения РОБОТА выясняем, что число клеток, удовлетворяющих условию задачи, равно 19.

Спрятать решение · ·
Тимур Закиров (Серафимовский (село)) 08.01.2014 14:03

Здравствуйте.

Скажите, пожалуйста, почему клетки D1 и D2 не подходят?

Петр Мурзин

Поскольку стартовав из них, Робот закончит своё движение в клетке F2.

Александр Дорофеев 21.02.2014 20:10

А разве клетка F6 подходит? по программе да, но тогда же робот не начнет движение.

Петр Мурзин

Насколько я понял, вас смущает формулировка. Фразу "начав дви­же­ние" следует понимать как "начав выполнение программы".