Разборы · ОГЭ, задание 15
Задание 15 ОГЭ по информатике: исполнитель Робот в Кумире
В задании 15 нужно написать программу для исполнителя Робот в системе Кумир. Робот стоит на клетчатом поле со стенами, размеры которых заранее неизвестны, и должен закрасить определённые клетки. Максимум — 2 балла.
Что умеет Робот
- Движение:
вверх,вниз,влево,вправо. Если на пути стена, Робот разбивается и программа останавливается. - Закраска:
закрасить— закрашивает клетку, где стоит Робот. - Проверки:
сверху свободно,снизу свободно,слева свободно,справа свободно. Их можно соединять связкамии,или,не; вместоне справа свободнодопускается писатьсправа стена. - Условие:
если условие то … все. - Цикл «пока»:
нц пока условие … кц— главный инструмент задания.
Пример
Робот стоит под горизонтальной стеной, у её левого конца. Длина стены неизвестна. Нужно закрасить все клетки под стеной.
использовать Робот
алг
нач
нц пока сверху стена
закрасить
вправо
кц
кон
Робот закрашивает клетку и идёт вправо, пока над ним есть стена. Как только стена закончилась, цикл останавливается. Программа работает при любой длине стены — именно это и проверяют.
Задача из демоверсии 2027: лестница
На поле лестница: сначала ступени идут вверх, потом вниз, высота подъёма и спуска неизвестна, каждая ступень — одна клетка. Робот стоит на нижней ступеньке у левого края. Нужно закрасить клетки на ступенях.
Идея решения — два цикла. Пока справа стена, Робот поднимается: закрашивает клетку и шагает вверх и вправо. На вершине он закрашивает угловую клетку и переходит на спуск. Там, пока слева стена, он закрашивает клетку и шагает вправо и вниз.
использовать Робот
алг
нач
нц пока справа стена
закрасить
вверх
вправо
кц
закрасить
вправо
вниз
нц пока слева стена
закрасить
вправо
вниз
кц
кон
Условие цикла проверяет стену рядом с Роботом, поэтому программа работает при любой высоте лестницы и Робот нигде не врезается в стену.
Как оценивают
Программу проверяют не только на поле с рисунка, а при всех допустимых исходных данных: стены длиннее и короче, ступеней больше или меньше.
- 2 балла — алгоритм правильно работает при всех допустимых данных.
- 1 балл — при всех допустимых данных программа завершается, Робот не разбивается, лишних закрашенных клеток не больше 10 и незакрашенных нужных — не больше 10.
- Отдельные синтаксические ошибки, не искажающие замысел, допускаются.
Типичные ошибки
- Программа «под рисунок». Команды
вправонаписаны 7 раз, потому что на рисунке 7 клеток. На другом поле такая программа ошибётся — нужны циклы с условием. - Незакрашенная последняя или первая клетка. Проверьте, что делает цикл на первом и последнем шаге.
- Лишняя закраска: Робот закрашивает клетку уже после того, как стена закончилась. Проверьте, где он окажется после выхода из цикла.
- Робот разбивается о стену, потому что команда движения стоит до проверки.
- Незакрытые конструкции. На экзамене Кумир не допишет
кц,всеиконза вас — привыкайте ставить их сами.
Как тренироваться
Тренажёр задания 15 повторяет Кумир: те же команды, пошаговое выполнение, поля справа от программы. Каждое решение проверяется на 30 разных полях и получает 0, 1 или 2 балла, как на экзамене.