Сколько клеток приведенного лабиринта соответствуют требованию, что
Условие
Исполнитель КОРАБЛИК «живет» в ограниченном прямоугольном водоеме-лабиринте, разделенном на клетки и изображенном на рисунке (вид сверху). Серые клетки — скалистые берега, светлые — свободное пространство, безопасное для передвижения КОРАБЛИКА. По краю водоема-лабиринта также находятся скалы с нанесенными на них номерами и буквами для удобства идентификации клеток.

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