Вверх по лестнице. №15 ОГЭ

Робот находится на неизвестном расстоянии от лестницы, ведущей вверх. Как ему закрасить клетки около ступеней этой лестницы…

Команды Робота.

№D65651

Условие

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

Напишите для Робота алгоритм, закрашивающий все клетки, расположенные непосредственно над ступенями лестницы. Требуется закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):

Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого количества ступеней. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. 

Решение

Посмотрим, что известно из условия:

Разделим решение задачи на 2 этапа:

Рассмотрим подробнее каждый этап.

По условию “Робот находится на горизонтальной стене”, то есть искать стену не нужно. Неизвестно сколько клеток необходимо пройти Роботу до лестницы. Значит, надо использовать цикл.

Закрашивание клеток над каждой ступенькой состоит из следующих действий:

Вверх по лестнице_4

Количество клеток неизвестно, то есть закрашивать их нужно в цикле:

Получаем варианты решения:

Скачать файл с алгоритмом D65651.txt


№9A95E7

  • условие
  • вариант решения

На бесконечном поле имеются две горизонтальных стены, соединенных лестницей. Верхняя стена бесконечно продолжается влево, нижняя – вправо. Количество ступеней лестницы неизвестно. Высота каждой ступени 2 клетки, ширина – 3 клетки. Робот находится на нижней горизонтальной стене, правее лестницы.

На рисунке указан один из возможных способов расположения лестницы, стен и Робота (Робот обозначен буквой «Р»).

Напишите для Робота алгоритм, закрашивающий клетки, расположенные рядом с вертикальной частью каждой ступени. Требуется закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):

Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого количества ступеней.

При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.

Вверх по лестнице_7

Примеры из Банка заданий ОГЭ