Программное управление исполнителем — КиберПедия 

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

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

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

2017-12-12 494
Программное управление исполнителем 0.00 из 5.00 0 оценок
Заказать работу

Для программного управления недостаточно знать, какие команды, и в какой последовательности надо исполнить. Нужно еще записать эти команды в форме, понятной для компьютера, т. е. оформить их в виде алгоритма.

Например, для задачи из предыдущего пункта алгоритм будет выглядеть так:

 
 
А1


алг ход конем

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

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

нач

вправо

вправо

вниз

Кон

 

Общий вид алгоритма

В простейшем случае алгоритм на алгоритмическом языке записывается так:

алг имя алгоритма

дано условия применимости алгоритма заголовок алгоритма

надо цель выполнения алгоритма

нач

| последовательность команд тело алгоритма

Кон

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

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

В строке дано описывается начальное состояние, при котором должен выполняться алгоритм, в строке надо — состояние после выполнения алгоритма.

Строки алг, дано и надо образуют заголовок алгоритма. Заголовок задает условие решаемой задачи, в нем указывается, что делает данный алгоритм.

Часть алгоритма от строки нач до строки кон называется телом алгоритма. Тело описывает решение задачи, в нем показано, как достигается цель алгоритма.

Комментарии в алгоритмическом языке

В алгоритме "ход конем" (А1) после знака | в строках дано и надо записан комментарий. Такие комментарии разрешается помещать в конце любой строки, отделяя их знаком |. Если комментарий занимает несколько строк, то знак | перед комментарием надо ставить в каждой строке. Комментарии могут записываться в любой удобной для человека форме. При выполнении алгоритма компьютер полностью пропускает комментарии — алгоритм выполняется так же, как если бы комментариев вообще не было.

Таким образом, комментарии предназначены исключительно для человека — они облегчают понимание алгоритма.

 

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

Получив приказ исполнить алгоритм, компьютер выполняет следующие действия:

1) Находит в памяти алгоритм с указанным именем.

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

3) Последовательно читает команды после строки нач и передает их исполнителю. Каждый такой приказ на выполнение команды называется вызовом этой команды.

4) Встретив строку кон, проверяет, достигнута ли цель алгоритма, указанная в строке надо (см. примечание к п. 2).

5) Заканчивает выполнение алгоритма.

 

Пример. Компьютер получает приказ исполнить алгоритм "ход конем".

1) Компьютер находит в памяти алгоритм А1.

2) В строке дано записан комментарий — компьютер его пропускает.

3) Компьютер последовательно командует Роботу вправо, вправо, вниз. Робот исполняет эти команды.

4) В строке надо помещен комментарий — компьютер его пропускает.

5) Компьютер заканчивает выполнение алгоритма "ход конем".

Ошибки в алгоритмах

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

Но даже если все команды записаны правильно, это еще не значит, что алгоритм составлен без ошибок. Ошибки в составлении алгоритма называются логическими.

Иногда логическая ошибка может привести к отказу — невозможности выполнить очередную команду. Например, при попытке выполнить алгоритм "ход конем" (А1) в обстановке, изображенной на рисунке 2, компьютер попытается последовательно вызвать команды вправо, вправо, вниз. Однако вторую команду вправо Робот выполнить не сможет — возникает отказ. Получив от исполнителя сигнал отказа, компьютер сообщает об ошибке и прекращает выполнение алгоритма.

 

Рис. 2

У каждого исполнителя могут быть свои причины отказов. Отказ Робота возникает при попытке идти сквозь стену.

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

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

 

Таблица 1. Ошибки в алгоритмах.

 

Смысл ошибки Название Пример
  Цель не достигнута Логическая Робот не попал куда надо
  Команда не входит в СКИ Синтаксическая наверх, направо
  Авария при попытке исполнения команды Семантическая (отказ) Попытка пройти сквозь стену

Поделиться с друзьями:

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.