Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс_ред.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
1.76 Mб
Скачать

Исполнители алгоритмов

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

В ряду всевозможных автоматов компьютер является лишь частным (хотя и наиболее впечатляющим) примером исполнителя, чье поведение реализуется на основе алгоритма. Более того, создание компьютеров оказало воздействие на развитие теории алгоритмов — одной из областей математики. От компьютера, как от любого другого исполнителя, требуется четкое выполнение команд алгоритма. А от разработчиков алгоритмов работы компьютера требуется знание и соблюдение правил их составления.

Точное определение исполнителя дать очень трудно, да и в этом нет необходимости. Важно понять основные характеристики исполнителя:

Среда - это «место обитания» исполнителя. Например, исполнитель Чертежник обитает на бесконечном листе бумаги, а исполнитель Робот имеет клетчатое поле.

Система команд. Каждый исполнитель может выполнять команды только из некоторого строго заданного множества. Знать систему команд исполнителя это значит:

  • знать название или обозначение каждой команды исполнителя;

  • знать, каким образом она передается исполнителю;

  • знать, как выполняется каждая команда.

Формальное исполнение. Исполнитель ничего не знает о цели алгоритма. Он выполняет все полученные команды, не задавая вопросов «почему?» и «зачем?».

Управление исполнителями заключается в последовательном вызове команд. Человек дает команду исполнителю, анализирует результат, отдает следующую команду и т.д.

Исполнитель Чертежник

Чертежник предназначен для построения рисунков, чертежей, графиков и т.д. на бесконечном листе бумаги. Чертежник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след – отрезок от старого положения пера до нового. Всего Чертежник умеет выполнять четыре команды:

  • Опустить перо;

  • Поднять перо;

  • Сместиться в точку (х, у);

  • Сместиться на вектор (а, b).

По команде «Опустить перо» Чертежник опускает перо. Если перо уже было опущено, Чертежник не выполняет никаких действий, но и отказа не происходит. Таким образом, после выполнения команды «опустить перо» перо оказывается опущенным (готовым к рисованию) независимо от его предыдущего положения.

Аналогично по команде «Поднять перо» перо будет поднято. Выполнение этой команды тоже не может привести к отказу.

Команды «Сместиться в точку» и «Сместиться на вектор» перемещают перо Чертежника. Если при этом перо опущено, на бумаге остается след. Таким образом, эти команды позволяют строить чертежи и рисунки.

Исполнитель Робот

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

Робот умеет выполнять всего 17 команд: 5 команд-приказов и 12 команд-вопросов.

Команды – приказы: «Вверх», «Вниз», «Вправо», «Влево», «Закрасить».

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

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