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

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

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

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

  1. И звестно, что Робот находится где-то внутри пробирки шириной в одну клетку, расположенной вертикально. Высота пробирки неизвестна. Наполнить пробирку водой (закрасить клетки синим цветом) и переместить Робота на стол (стол коричневого цвета).

  1. Известно: Робот находится где-то между двумя вертикальными стенками одинаковой, но неизвестной высоты. Необходимо: Закрасить зеленым цветом клетки, прилегающие к стенкам с обеих сторон. В нижней части рабочего поля показано, что должно получиться.

Урок 20. Команда ветвления

Рассмотрим новую задачу для Робота. Надо закрасить в синий цвет все клетки коридора, имеющие отрицательную температуру, а в красный – все остальные клетки.

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

Либо говоря по-другому, если температура меньше нуля, то берем синюю краску, в противном случае берем красную краску. В программе для этой цели используется специальный условный оператор если (команда ветвления). И алгоритм, содержащий такой оператор, называется разветвляющимся.

В разветвляющемся алгоритме группы исполняемых команд могут быть разными, в зависимости от того, какова окружающая обстановка. Примером разветвляющегося алгоритма может служить алгоритм перехода улицы:

П одойти к пешеходному переходу.

Если есть светофор, то

ждать зеленого света

перейти улицу

иначе

ждать, пока слева не будет машин

перейти улицу до середины

ждать, пока справа не будет машин

перейти вторую половину улицы

Р ассмотрим алгоритм для решения такой задачи: Нужно проехать к АЗС по дороге, участок которой ремонтировался и неизвестно, закончился ли ремонт. В этом нам поможет такая блок-схема:

А лгоритмическая конструкция команды ветвления выглядит следующим образом:

если <условие>

то команды_1

иначе

команды_2

все

Р ассмотрим алгоритм «Покупка билета на 12 часовой киносеанс».

Он несколько отличается от той алгоритмической конструкции для команды ветвления, которую мы уже рассмотрели.

если <условие>

то команды_1

все

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

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

  1. Условный оператор состоит из двух частей; первая часть начинается ключевым словом если, после которого записывается условие. Условный оператор обязательно заканчивается ключевым словом все.

  2. Если это условие верно (или истинно), то выполняется группа команд, стоящая после ключевого слова то (блок-если).

  3. Вторая часть (блок-иначе) начинается со слова иначе и выполняется в том случае, когда условие после ключевого слова если ложно.

  4. Нельзя отделять блок-если и блок-иначе, поскольку они составляют единый оператор.

  5. Условие ставится только в заголовке блока-если.

  6. Блок-иначе может отсутствовать, если он не нужен; в этом случае мы говорим, что условный оператор записан в сокращенной форме.

  7. Чтобы было удобнее разбираться в программе, используют отступы так же, как и в циклах: тело блока-если и блока-иначе сдвигается вправо на 2-3 символа.

Теперь мы сможем решить поставленную задачу, напомним ее условия: Закрасить в синий цвет все клетки коридора имеющие отрицательную температуру, а в красный – все остальные клетки.

алг температура

дано! коридор

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

нач

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

если температура<0 то

краска(1);

иначе

краска(4);

все

закрасить;

вправо;

кц

если температура<0 то

краска(1);

иначе

краска(4);

все

закрасить;

кон

Заполните предложенную вашему вниманию блок – схему по данному алгоритму:

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

Тогда решение задачи будет выглядеть следующим образом:

алг температура

дано! коридор

надо! закрасить клетки с отрицательной температурой

! в синий цвет

нач

краска(1);

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

если температура<0 то

закрасить;

все

вправо;

кц

если температура<0 то

закрасить;

кон

Можно сравнить результаты выполнения этих программ:

1 программа: 2 программа:

Приведите пример блок-схему для решения второй задачи.

Задания:

  1. И змерить температуру каждой клетки металлической пластины, нагреваемой свечами и закрасить клетки имеющие температуру больше 110С красным цветом, а ниже 30С – голубым.

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

  1. Изобразить на бумаге то, что получиться после исполнения роботом следующего алгоритма:

алг задача

дано ! тоннель

надо ! закрасить определенные клетки тоннеля

нач

*

краска (2);

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

вправо;

если снизу стена

то закрасить;

все

кц

нц пока снизу свободно

вниз; закрасить;

кц

нц пока слева свободно

если сверху стена

то закрасить;

все

влево;

кц

кон