Версия для копирования в MS Word
PDF-версии: горизонтальная · вертикальная · крупный шрифт · с большим полем
Образовательный портал «РЕШУ ОГЭ» (https://inf-oge.sdamgia.ru)
Задания

Выберите ОДНО из предложенных ниже заданий: 15.1 или 15.2.

 

15.1 Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может. У Робота есть девять команд. Четыре команды — это команды-приказы:

вверх    вниз    влево    вправо

При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.

Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.

Ещё четыре команды — это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:

сверху свободно   снизу свободно   слева свободно   справа свободно

Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:

если условие то

последовательность команд

все

 

Здесь условие — одна из команд проверки условия. Последовательность команд — это одна или несколько любых команд-приказов. Например, для передвижения на одну клетку вправо, если справа нет стенки и закрашивания клетки, можно использовать такой алгоритм:

если справа свободно то

вправо

закрасить

все

 

В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:

если (справа свободно) и (не снизу свободно) то

вправо

все

 

Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:

нц пока  условие

последовательность команд

кц

 

Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:

нц пока справа свободно

вправо

кц

 

 

Выполните задание

Робот находится в произвольной клетке узкого вертикального коридора. Ширина коридора — одна клетка, длина коридора может быть произвольной. Точное положение Робота также неизвестно. Возможный вариант начального расположения Робота приведён на рисунке (Робот обозначен буквой «Р»):

Напишите для Робота алгоритм, закрашивающий все клетки внутри коридора.

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

 

Алгоритм должен решать задачу для произвольного конечного размера коридора и произвольного начального расположения Робота. При исполнении алгоритма Робот не должен разрушиться. Алгоритм может быть выполнен в среде формального исполнителя или  записан в текстовом редакторе. Сохраните алгоритм в формате программы Кумир или в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.

 

 

 

15.2. Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 5 или 9. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: количество чисел, кратных 5 или 9.

 

Пример работы программы:

 

Входные данные

Выходные данные

15
91
90
0

2