Часть 2 — на компьютере (задания 11–16) · ОГЭ по информатике
Задание 15. Исполнитель «Робот»
Создавать и выполнять программы для заданного исполнителя. 2 балла · высокий уровень · 25 минут · нужен среда «Робот» (Кумир) или текстовый редактор. 5 вариантов с эталоном и разбором критериев.
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними клетками может стоять стена, через которую Робот пройти не может.
У Робота есть четыре команды-приказа: вверх, вниз, влево, вправо — и команда закрасить. Есть команды-вопросы: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл нц пока условие … кц повторяет команды, пока условие истинно.
На бесконечном поле имеется лестница, поднимающаяся слева направо. Высота и ширина каждой ступени — одна клетка, число ступеней неизвестно. Робот стоит на нижней ступени у левого края. Напишите алгоритм, который закрашивает все клетки, примыкающие к лестнице сверху, и приводит Робота в клетку справа от последней ступени.
Решение записывается в среде «Робот» (Кумир) или простым текстом в формате *.txt — так разрешает спецификация.
Ваш ответ
Запишите решение здесь — черновик сохраняется в браузере. Автоматической проверки у этого задания нет: на экзамене работу читает эксперт, поэтому сверьтесь с эталоном и пройдите по критериям сами.
- Число повторений заранее неизвестно, поэтому нужен цикл «нц пока …», а не заданное число шагов.
- Условие цикла проверяет соседнюю клетку: «справа свободно», «не снизу свободно» и так далее.
- Последняя клетка часто остаётся незакрашенной: цикл заканчивается раньше, чем Робот её закрасит, — поэтому в конце стоит отдельная команда «закрасить».
нц пока справа свободно
закрасить
вправо
нц пока не сверху свободно
вверх
закрасить
кц
кц
закраситьПроверьте себя по критериям
На экзамене задание оценивается в 2 балла: 2 — если алгоритм верен во всех случаях, 1 — если верен, но с одной непринципиальной ошибкой, 0 — иначе.
- Алгоритм работает при любом числе ступеней (стен) — использован цикл с условием, а не фиксированное число шагов
- Закрашены все нужные клетки и не закрашены лишние
- Робот нигде не пытается пройти сквозь стену
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними клетками может стоять стена, через которую Робот пройти не может.
У Робота есть четыре команды-приказа: вверх, вниз, влево, вправо — и команда закрасить. Есть команды-вопросы: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл нц пока условие … кц повторяет команды, пока условие истинно.
На бесконечном поле есть горизонтальная стена. Длина стены неизвестна. Робот находится в клетке над левым концом стены. Напишите алгоритм, закрашивающий все клетки над стеной и останавливающий Робота в конце стены.
Решение записывается в среде «Робот» (Кумир) или простым текстом в формате *.txt — так разрешает спецификация.
Ваш ответ
Запишите решение здесь — черновик сохраняется в браузере. Автоматической проверки у этого задания нет: на экзамене работу читает эксперт, поэтому сверьтесь с эталоном и пройдите по критериям сами.
- Число повторений заранее неизвестно, поэтому нужен цикл «нц пока …», а не заданное число шагов.
- Условие цикла проверяет соседнюю клетку: «справа свободно», «не снизу свободно» и так далее.
- Последняя клетка часто остаётся незакрашенной: цикл заканчивается раньше, чем Робот её закрасит, — поэтому в конце стоит отдельная команда «закрасить».
нц пока не снизу свободно
закрасить
вправо
кц
влевоПроверьте себя по критериям
На экзамене задание оценивается в 2 балла: 2 — если алгоритм верен во всех случаях, 1 — если верен, но с одной непринципиальной ошибкой, 0 — иначе.
- Алгоритм работает при любом числе ступеней (стен) — использован цикл с условием, а не фиксированное число шагов
- Закрашены все нужные клетки и не закрашены лишние
- Робот нигде не пытается пройти сквозь стену
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними клетками может стоять стена, через которую Робот пройти не может.
У Робота есть четыре команды-приказа: вверх, вниз, влево, вправо — и команда закрасить. Есть команды-вопросы: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл нц пока условие … кц повторяет команды, пока условие истинно.
На бесконечном поле есть две вертикальные стены, расположенные друг напротив друга. Расстояние между ними и их высота неизвестны. Робот стоит между стенами у нижнего края. Напишите алгоритм, закрашивающий клетки вдоль левой стены снизу вверх.
Решение записывается в среде «Робот» (Кумир) или простым текстом в формате *.txt — так разрешает спецификация.
Ваш ответ
Запишите решение здесь — черновик сохраняется в браузере. Автоматической проверки у этого задания нет: на экзамене работу читает эксперт, поэтому сверьтесь с эталоном и пройдите по критериям сами.
- Число повторений заранее неизвестно, поэтому нужен цикл «нц пока …», а не заданное число шагов.
- Условие цикла проверяет соседнюю клетку: «справа свободно», «не снизу свободно» и так далее.
- Последняя клетка часто остаётся незакрашенной: цикл заканчивается раньше, чем Робот её закрасит, — поэтому в конце стоит отдельная команда «закрасить».
нц пока сверху свободно
закрасить
вверх
кц
закраситьПроверьте себя по критериям
На экзамене задание оценивается в 2 балла: 2 — если алгоритм верен во всех случаях, 1 — если верен, но с одной непринципиальной ошибкой, 0 — иначе.
- Алгоритм работает при любом числе ступеней (стен) — использован цикл с условием, а не фиксированное число шагов
- Закрашены все нужные клетки и не закрашены лишние
- Робот нигде не пытается пройти сквозь стену
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними клетками может стоять стена, через которую Робот пройти не может.
У Робота есть четыре команды-приказа: вверх, вниз, влево, вправо — и команда закрасить. Есть команды-вопросы: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл нц пока условие … кц повторяет команды, пока условие истинно.
На бесконечном поле нарисован прямоугольник из стен. Длины сторон неизвестны. Робот стоит внутри прямоугольника в левом нижнем углу. Напишите алгоритм, закрашивающий нижний ряд клеток внутри прямоугольника.
Решение записывается в среде «Робот» (Кумир) или простым текстом в формате *.txt — так разрешает спецификация.
Ваш ответ
Запишите решение здесь — черновик сохраняется в браузере. Автоматической проверки у этого задания нет: на экзамене работу читает эксперт, поэтому сверьтесь с эталоном и пройдите по критериям сами.
- Число повторений заранее неизвестно, поэтому нужен цикл «нц пока …», а не заданное число шагов.
- Условие цикла проверяет соседнюю клетку: «справа свободно», «не снизу свободно» и так далее.
- Последняя клетка часто остаётся незакрашенной: цикл заканчивается раньше, чем Робот её закрасит, — поэтому в конце стоит отдельная команда «закрасить».
нц пока справа свободно
закрасить
вправо
кц
закраситьПроверьте себя по критериям
На экзамене задание оценивается в 2 балла: 2 — если алгоритм верен во всех случаях, 1 — если верен, но с одной непринципиальной ошибкой, 0 — иначе.
- Алгоритм работает при любом числе ступеней (стен) — использован цикл с условием, а не фиксированное число шагов
- Закрашены все нужные клетки и не закрашены лишние
- Робот нигде не пытается пройти сквозь стену
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними клетками может стоять стена, через которую Робот пройти не может.
У Робота есть четыре команды-приказа: вверх, вниз, влево, вправо — и команда закрасить. Есть команды-вопросы: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл нц пока условие … кц повторяет команды, пока условие истинно.
На бесконечном поле имеется лестница, спускающаяся слева направо. Число ступеней неизвестно. Робот стоит на верхней ступени у левого края. Напишите алгоритм, закрашивающий все клетки лестницы.
Решение записывается в среде «Робот» (Кумир) или простым текстом в формате *.txt — так разрешает спецификация.
Ваш ответ
Запишите решение здесь — черновик сохраняется в браузере. Автоматической проверки у этого задания нет: на экзамене работу читает эксперт, поэтому сверьтесь с эталоном и пройдите по критериям сами.
- Число повторений заранее неизвестно, поэтому нужен цикл «нц пока …», а не заданное число шагов.
- Условие цикла проверяет соседнюю клетку: «справа свободно», «не снизу свободно» и так далее.
- Последняя клетка часто остаётся незакрашенной: цикл заканчивается раньше, чем Робот её закрасит, — поэтому в конце стоит отдельная команда «закрасить».
нц пока справа свободно или снизу свободно
закрасить
нц пока справа свободно
вправо
закрасить
кц
если снизу свободно
то вниз
все
кцПроверьте себя по критериям
На экзамене задание оценивается в 2 балла: 2 — если алгоритм верен во всех случаях, 1 — если верен, но с одной непринципиальной ошибкой, 0 — иначе.
- Алгоритм работает при любом числе ступеней (стен) — использован цикл с условием, а не фиксированное число шагов
- Закрашены все нужные клетки и не закрашены лишние
- Робот нигде не пытается пройти сквозь стену
Что нужно знать
Команды Робота
- вверх, вниз, влево, вправопереместиться на клетку
- закраситьзакрасить текущую клетку
- сверху свободно и т. п.вопрос: есть ли стена
Главное правило
Запись нц пока условие … кц повторяет команды, пока условие истинно. Фиксированное число шагов не подойдёт: проверяющий запустит алгоритм на другом поле.
Последняя клетка
Цикл заканчивается, когда условие перестаёт выполняться, — и последняя клетка часто остаётся незакрашенной. Поэтому после цикла почти всегда стоит отдельная команда закрасить.
Мысленно проверьте алгоритм на самом маленьком поле: одна ступень, одна клетка. Там ошибки видны сразу.