Стены с проходами (2 часть). №15 ОГЭ
2 часть подборки заданий, в которых Робот должен закрасить клетки вдоль стен неизвестной длины. В каждой стене один проход, его ширина неизвестна.
№C8AEFC
условие
вариант решения
На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с верхним концом вертикальной стены. Длины стен неизвестны. В каждой стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной непосредственно под горизонтальной стеной у её левого конца.
На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные непосредственно ниже горизонтальной стены и левее вертикальной стены. Проходы должны остаться незакрашенными. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера проходов внутри стен. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.
Ведём Робота до прохода в горизонтальной стене, закрашивая клетки:
Проводим около прохода. Его ширина неизвестна, то есть может быть больше одной клетки. Значит, тоже нужен цикл.
Ведём до вертикальной стены. Чтобы Робот не разбился, он будет закрашивать клетки и перемещаться пока справа свободно.
Спускаем до прохода в вертикальной стене:
Перемещаем мимо прохода:
Спускаем до конца вертикальной стены, закрашивая клетки:
№BE05D3
условие
вариант решения
На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с верхним концом вертикальной стены. Длины стен неизвестны. В каждой стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её нижнего конца.
На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные непосредственно левее вертикальной стены и ниже горизонтальной стены. Проходы должны остаться незакрашенными. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным.
Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера проходов внутри стен.
Поднимаем Робота до прохода в вертикальной стене, закрашивая клетки:
Проводим мимо прохода:
Доводим до горизонтальной стены, закрашивая клетки.
Ведём влево до прохода в горизонтальной стене, закрашивая клетки:
Проводим мимо прохода в горизонтальной стене:
Проводим влево до конца горизонтальной стены, закрашивая клетки:
№E11855
условие
вариант решения
На бесконечном поле есть горизонтальная и вертикальная стены. Левый конец горизонтальной стены соединён с верхним концом вертикальной стены. Длины стен неизвестны. В каждой стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной непосредственно под горизонтальной стеной у её правого конца.
На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные непосредственно ниже горизонтальной стены и правее вертикальной стены. Проходы должны остаться незакрашенными. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным.
Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера проходов внутри стен.
Ведём Робота влево до прохода в горизонтальной стене, закрашивая клетки:
Проводим мимо прохода:
Доводим до вертикальной стены, закрашивая клетки.
Спускаем до прохода в вертикальной стене:
Перемещаем мимо прохода:
Спускаем до конца вертикальной стены, закрашивая клетки:
№419CC9
условие
вариант решения
На бесконечном поле имеются четыре стены, соединённые между собой, которые образуют прямоугольник. Длины стен неизвестны. В левой вертикальной стене есть ровно один проход. Проход не может примыкать к углу прямоугольника. Точное место прохода и ширина прохода неизвестна. Робот находится около нижнего конца левой вертикальной стены, снаружи прямоугольника и выше нижней стены.
На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные вдоль стен прямоугольника с внешней стороны и угловые клетки. Проход должен остаться незакрашенным. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным.
Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера проходов внутри стен.
Особенность выполнения задания – угловые клетки тоже должны быть закрашены.
Ведём Робота вверх до прохода в левой вертикальной стене, закрашивая клетки:
Перемещаем мимо прохода:
Поднимаем до конца левой вертикальной стены, закрашивая клетки.
Закрашиваем угловую клетку и устанавливаем Робота над верхней горизонтальной стеной:
Закрашивая клетки, ведём до конца стены:
Закрашиваем угловую клетку и устанавливаем Робота рядом с правой вертикальной стеной:
Спускаем до конца стены, закрашивая клетки:
Закрашиваем угловую клетку и устанавливаем Робота под нижней горизонтальной стеной:
Закрашивая клетки, ведём до конца стены:
Закрашиваем последнюю угловую клетку:
№5E59CE
условие
вариант решения
На бесконечном поле имеются четыре стены, соединённые между собой, которые образуют прямоугольник. Длины стен неизвестны. В левой вертикальной стене есть ровно один проход, в нижней горизонтальной стене также есть ровно один проход. Проход не может примыкать к углу прямоугольника. Точные места проходов и ширина проходов неизвестны. Робот находится около нижнего конца левой вертикальной стены, снаружи прямоугольника и выше нижней стены. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные вдоль стен прямоугольника с внутренней стороны. Проходы должны остаться незакрашенными. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены.
Особенность выполнения задания – прежде, чем закрашивать клетки, нужно завести Робота внутрь прямоугольника. Для этого доведём его до начала прохода в вертикальной стене:
Устанавливаем около стены с внутренней стороны прямоугольника:
Закрашивая клетки, проводим до нижней стены:
Ведём до прохода в нижней стене, закрашивая клетки:
Перемещаем мимо прохода:
Закрашивая клетки, ведём к правой вертикальной стене:
Закрашивая клетки, проводим к верхней горизонтальной стене:
Ведём к левой вертикальной стене, закрашивая клетки:
Спускаем Робота вниз, закрашивая оставшиеся вдоль левой вертикальной стены клетки:
Примеры из Банка заданий ОГЭ