Найти в Дзене
sДаёшь ОГЭ/ЕГЭ

ОГЭ по информатике. Задание 15.1

В 15 задании ОГЭ также предлагается два задания на выбор. Вы можете написать программу для исполнителя Робот в среде КуМир (или набрать алгоритм в текстовом редакторе) либо написать программу решения задачи на одном из языков программирования.

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

В этой статье я разберу пример написания алгоритма для Робота без КуМира. Почему? В одних школах этой среде уделяют достаточно много внимания (таким учащимся легче воспринять излагаемый мной материал), в других же - об этой программной среде только упоминается (вот для таких лучше не изучать ее, а познакомиться с правилами оформления и записи алгоритмов).

Перейдем уже к примеру:

-2

-3

Это все одно задание! О, ужас! На самом деле бояться нечего. Большая часть - описание команд, которые выполняет Робот. Команды очень простые: вверх, вниз, влево, вправо (это направление движения). Остальные команды можете прочитать в задании. Их вы увидите ниже в алгоритме.

Нас интересует в первую очередь рисунок.

-4

Внимательно читайте задание. Там сказано, что длины стен неизвестны, длины проемов в стене также неизвестны. Это очень важно.

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

-5

На первом рисунке показано, откуда Робот начинает движение.

вправо {Робот делает шаг вправо, так как клетка, из которой Робот начинает движение не должна быть закрашена }

нц пока не сверху свободно {начало цикла, пока сверху стена...}

закрасить {...Робот закрашивает клетку и ...}

вправо {...делает шаг вправо}

кц {когда Робот дойдет до проема в стене, цикл закончится}

нц пока сверху свободно {начало другого цикла, пока сверху нет стены}

вправо {Робот двигается вправо не закрашивая}

кц {когда сверху опять начнется стена, цикл завершается}

нц пока справа свободно {начало другого цикла, пока справа нет стены...}

закрасить {...Робот закрашивает клетки и ...}

вправо {...двигается вправо}

кц {когда Робот дойдет до угла, справа будет стена, цикл закончен}

нц пока не справа свободно {новый цикл, пока справа стена...}

закрасить {...Робот закрашивает клетки и ...}

вниз {...спускается вниз}

кц {когда Робот дойдет до проема в правой стене, цикл закончится}

нц пока справа свободно {новый цикл, пока Робот проходит проем...}

вниз {...т.е. спускается вниз не закрашивая клетки}

кц {когда стена справа опять появиться, цикл остановится}

нц пока не справа свободно {последний цикл, пока справа опять стена...}

закрасить {...Робот закрашивает клетки и ... }

вниз {...спускается вниз}

кц {длина стены неизвестна, но Робот будет закрашивать клетки, пока стена не закончится}

И все это вы можете напечатать в текстовом редакторе, в фигурных скобках пояснения писать необязательно.

Если остались вопросы, пишите в комментариях. Обязательно отвечу. Если нужно разобрать конкретный пример, также - в комментарии.

Читайте: Задание 1, Задание 2, Задание 3, Задача 4, Задание 5, Задание 6, Задание 7, Задание 8, Задание 9, Задание 10, Задание 11, Задание 12, Задание 13.1, Задание 13.2, Задание 14-1, Задание 14-2, Задание 14-3, Задание 15.2.