Задание 15 ОГЭ по информатике · 85A776
ПовышеннаяКЭС 3.1
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может.
У Робота есть девять команд. Четыре команды – это команды-приказы:
вверх вниз влево вправо
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.
Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.
Ещё четыре команды – это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:
сверху свободно снизу свободно слева свободно справа свободно
Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:
если условие то
последовательность команд
все
Здесь условие – одна из команд проверки условия.
Последовательность команд – это одна или несколько любых команд-приказов.
Например, для передвижения на одну клетку вправо, если справа нет стенки и закрашивания клетки, можно использовать такой алгоритм:
если справа свободно то
вправо
закрасить
все
В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:
если (справа свободно) и (не снизу свободно) то
вправо
все
Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:
нц пока условие
последовательность команд
кц
Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:
нц пока справа свободно
вправо
кц
Выполните задание
Робот находится в левом верхнем углу огороженного пространства, имеющего форму прямоугольника. Размеры прямоугольника неизвестны. Один из возможных размеров прямоугольника и расположение Робота внутри прямоугольника приведено на рисунке (Робот обозначен буквой «Р»):
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные внутри прямоугольника и прилегающие к нижней стороне прямоугольника. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.
Сохраните алгоритм в формате программы Кумир или в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.
У Робота есть девять команд. Четыре команды – это команды-приказы:
вверх вниз влево вправо
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.
Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.
Ещё четыре команды – это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:
сверху свободно снизу свободно слева свободно справа свободно
Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:
если условие то
последовательность команд
все
Здесь условие – одна из команд проверки условия.
Последовательность команд – это одна или несколько любых команд-приказов.
Например, для передвижения на одну клетку вправо, если справа нет стенки и закрашивания клетки, можно использовать такой алгоритм:
если справа свободно то
вправо
закрасить
все
В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:
если (справа свободно) и (не снизу свободно) то
вправо
все
Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:
нц пока условие
последовательность команд
кц
Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:
нц пока справа свободно
вправо
кц
Выполните задание
Робот находится в левом верхнем углу огороженного пространства, имеющего форму прямоугольника. Размеры прямоугольника неизвестны. Один из возможных размеров прямоугольника и расположение Робота внутри прямоугольника приведено на рисунке (Робот обозначен буквой «Р»):
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные внутри прямоугольника и прилегающие к нижней стороне прямоугольника. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.
Сохраните алгоритм в формате программы Кумир или в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.


Показать ответ
нц пока снизу свободно; вниз; кц; закрасить; нц пока справа свободно; вправо; закрасить; кц
Подсказки (3)
- Как Роботу из верхнего левого угла попасть в левую клетку нижней стороны?
- Сначала двигайтесь вниз, пока снизу свободно. Оказавшись в нижнем ряду, закрасьте текущую клетку и двигайтесь вправо, пока это возможно.
- Используйте два цикла: `нц пока снизу свободно` с командой `вниз`, затем закрасьте клетку и выполните `нц пока справа свободно` с командами `вправо` и `закрасить`.
Решение
1. Робот начинает в левом верхнем углу. Чтобы попасть в нижний ряд, нужно перемещать его вниз, пока снизу есть свободная клетка.
2. После завершения первого цикла Робот находится в левой клетке нижнего ряда. Закрасим её.
3. Затем будем перемещаться вправо, закрашивая каждую посещённую клетку. Цикл завершится у правой границы прямоугольника.
4. Алгоритм на языке исполнителя Робот:
2. После завершения первого цикла Робот находится в левой клетке нижнего ряда. Закрасим её.
3. Затем будем перемещаться вправо, закрашивая каждую посещённую клетку. Цикл завершится у правой границы прямоугольника.
4. Алгоритм на языке исполнителя Робот:
нц пока снизу свободно
вниз
кц
закрасить
нц пока справа свободно
вправо
закрасить
кцЧастые ошибки
- Не закрашивают первую клетку нижнего ряда перед началом движения вправо.
- Закрашивают клетку после выхода за правую границу или выполняют лишнюю команду вправо.
- Используют фиксированное число шагов, хотя размеры прямоугольника неизвестны.
Источник: Открытый банк ФИПИ
Похожие задания
15Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 7F529B15Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 84B37715Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 851AC015Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 8540BE15Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 86059115Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 8621AC15Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 873FA915Четыре команды – это команды-приказы: вверх вниз влево вправо При выполнении любой из этих команд Робот…Задания открытого банка ФИПИ · 893B45
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ОГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.