Разделение труда между компьютером и исполнителями

Алгоритм — это описание последовательности действий компьютера. Исполнители ничего ни про какие алгоритмы не знают.

Так, при выполнении алгоритма "из А в Б с закрашиванием" (А8) именно компьютер «разбирается» в записи алгоритма на алгоритмическом языке, «понимает», что сначала надо выполнить алгоритм "закрашивание блока" (А9), выполняет его и т. д. Робот же лишь выполняет последовательно поступающие от компьютера команды.

Схематически работа компьютера и Робота при выполнении этого алгоритма показана в таблице …...

Таблица 2. Диалог компьютера и Робота

Компьютер Робот
Вызывает алгоритм «закрашивание блока»  
Командует Роботу закрасить Закрашивает клетку
Командует Роботу вправо Делает шаг вправо
Командует Роботу закрасить Закрашивает клетку
Командует Роботу вправо Делает шаг вправо
Командует Роботу закрасить Закрашивает клетку
Командует Роботу вниз Делает шаг вниз
 

ЗАДАЧИ И УПРАЖНЕНИЯ

1. Измените алгоритм "закрашивание блока" так, чтобы Робот шел другим путем. Изменится ли при этом заголовок алгоритма? Почему?

2. Составьте алгоритм, который переводит Робота из А в Б и закрашивает клетки, отмеченные точками (рис. 7)

Разделение труда между компьютером и исполнителями - student2.ru

Разделение труда между компьютером и исполнителями - student2.ru

Разделение труда между компьютером и исполнителями - student2.ru

Разделение труда между компьютером и исполнителями - student2.ru

Рис. 7

3. Даны алгоритмы:

А11
алгфигура

Нач

| фрагмент; фрагмент; фрагмент; фрагмент; фрагмент

Кон

А12
алгфрагмент

Нач

Разделение труда между компьютером и исполнителями - student2.ru закрасить; вправо; закрасить; вправо; закрасить; вправо

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

закрасить; влево; закрасить; влево; закрасить; влево

закрасить; вверх; закрасить; вверх; закрасить

вправо; вправо; вправо; вниз; вниз

Кон

Нарисуйте результат выполнения алгоритма "фигура" (закрашенные клетки, начальное и конечное положения Робота).

4. Измените вспомогательный алгоритм "фрагмент" (А12) так, чтобы при выполнении алгоритма А11 Робот переместился из А в Б и закрасил клетки, отмеченные точками (рис. 8).

Разделение труда между компьютером и исполнителями - student2.ru

Разделение труда между компьютером и исполнителями - student2.ru

Разделение труда между компьютером и исполнителями - student2.ru

Рис. 8

9 Цикл n раз

9.1. Пример алгоритма с циклом n раз

При составлении алгоритмов довольно часто встречаются случаи, когда некоторую последовательность команд нужно выполнить несколько раз подряд (см., например, алгоритм A2). Для упрощения записи алгоритма в таких случаях можно использовать специальную составную команду алгоритмического языка — цикл n раз;

А13
алгиз А в Б

дано| Робот в клетке А (рис. 3 а)

надо| Робот в клетке Б (рис. 3 а)

Нач

Разделение труда между компьютером и исполнителями - student2.ru нц5 раз

|вверх; вверх; вправо; вниз; вниз; вправо

кц

Кон

При выполнении этого, алгоритма компьютер 5 раз повторит последовательность вызовов вверх; вверх; вправо; вниз; вниз; вправо и Робот окажется в клетке Б (рис. 3 а).

9.2. Общий вид цикла n раз

В общем виде цикл n раззаписывается так:

нцчисло повторений раз

| тело цикла (последовательность команд)

кц

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

Число повторений — произвольное целое число.

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

Наши рекомендации