Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Рабочая тетрадь1_брошюра.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Урок 8. Самостоятельная работа

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

Дополнительные задания:

  1. Робот находится в лабиринте. Напишите программу, которая позволит ему выбраться из него.

  1. *

    Н апишите программу изображения орнамента.

Урок 9. Циклические алгоритмы. Цикл «n раз»

Итак, мы с вами научились управлять Роботом. Под нашим руководством он рисует красивые узоры, ремонтирует трубопроводы и многое другое. Но давайте представим такую ситуацию: нам нужно, чтобы робот закрасил сто подряд идущих клеток. Так и писать сто раз команды закрасить и вправо? А если нужно закрасить несколько тысяч клеток? Такого количества команд никакой программный листок не вместит. Да и писать это тоскливо.

Конечно, чтобы закрасить сто клеток, Робот сто раз должен выполнить команды закрасить и вправо, тут уж ничего не поделаешь. Но совершенно не обязательно записывать их сто раз. Есть способ указать в алгоритме, что некоторая команда или группа команд должна выполниться Роботом несколько раз. Такая структура записи команд алгоритма называется циклом.

Ц икл – это многократное исполнение последовательности команд.

Итак, пусть исполнителю требуется перекрасить в красный цвет ряд из 6 синих клеток (см. рисунок справа). При решении этой задачи Робот должен подойти к ряду клеток, которые необходимо перекрасить, а затем выполнить 6 раз команды закрасить и вправо.

Для нашей задачи подходит цикл "N раз" с известным числом повторений.

В общем виде структура цикла выглядит так:

н ц n раз

{тело цикла}

команда 1;

команда 2;

…

кц

А как вы думаете зачем писать кц, обозначающий конец цикла?

Дело в том, что, как мы уже сказали, повторять иногда необходимо несколько команд и слово «кц» как раз и отделяет команды, которые выполняются многократно, от других, которые не нужно повторять. А чтобы легче было заметить, какие команды находятся внутри цикла, их следует писать с небольшим отступом вправо.

Для графического изображения цикла так же существует свой символ:

Решение задачи перекраски ряда с использованием цикла "N раз" выглядит так:

алг ряд

дано! ряд из 6 синих клеток

надо! перекрасить ряд в красный цвет

нач

краска (4);

вправо (3);

нц 6 раз

закрасить;

вправо;

кц

кон

В виде блок-схемы решение этой задачи будет выглядеть следующим образом:

Правила использования оператора цикла:

  1. Цикл "N раз" используется тогда, когда число повторений цикла заранее известно или может быть вычислено.

  2. Цикл начинается заголовком цикла – ключевым словом нц, за которым указывается нужное количество повторений цикла.

  3. Цикла заканчивается ключевым словом кц.

  4. В цикле повторяются все команды, находящиеся между заголовком цикла и ключевым словом кц (тело цикла).

  5. Для того чтобы легче разбираться в программе, применяют специальную систему записи с отступами: все команды, входящие в цикл, смещают вправо на 2-3 символа – это позволяет сразу видеть, где начинается и где заканчивается цикл.

Задание:

  1. Нарисуйте конечное положение робота (звездочка) после выполнения следующего алгоритма:

алг поход

…

*

дано! чистое поле

надо! передвинуть робота

нач

нц 300 раз

вправо;

кц

нц 298 раз

влево;

кц

кон

  1. Что будет изображено на экране и где будет расположен Робот, после выполнения следующего алгоритма:

алг стенки

*

дано! чистое поле

надо! выполнить алгоритм

нач

вправо(2);

нц 6 раз

построить(1);

построить(0);

вниз;

вправо;

кц

кон

  1. Робот должен был построить следующее изображение, но при составлении алгоритма была допущена ошибка. Исправьте алгоритм.

алг узор

*

◦

дано! чистое поле

надо! выполнить алгоритм

нач

вправо;

вниз;

краска(5);

нц 5 раз

закрасить;

вниз;

вправо;

вправо;

вниз;

кон

  1. Нужно провести робота сквозь лабиринт. Допишите начатый алгоритм до конца

а лг лабиринт

дано! лабиринт

надо! выйти из лабиринта

нач

вправо(2);

вниз;

нц раз

  1. Нужно создать узор следующего вида. Составьте два алгоритма: С одним циклом и двумя циклами. Оформите решения в виде блок-схем.

*


С одним циклом С двумя циклами