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

Планирование уроков на учебный год


Урок 13
Тема 13. Представление о программе




Изучив эту тему, вы узнаете:

- что такое Исполнитель и каково его назначение;
- что означают понятия программы и программирования на алгоритмических языках;
- в чем отличие процедурного и объектного подходов к программированию.










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


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

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

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

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

image


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

Во всех приведенных выше примерах объект, исполняющий действия алгоритма, не обязан:

✔ понимать цели и методы достижения этой цели;
✔ пропускать действия или менять их порядок по своему усмотрению;
✔ искать какую-то замену, если действие выполнить невозможно.

image    Исполнитель — объект, который выполняет алгоритм.

image

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

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

Так появляется третья стадия, на которой алгоритм должен быть представлен в форме, понятной Исполнителю. Исполнитель, как и любой объект, находится в определенной среде и может выполнять только допустимые в ней действия. Если Исполнитель встретит в алгоритме неизвестную ему команду, то выполнение алгоритма прекратится.

13.2. Понятие программы


На третьей стадии разработки алгоритма необходимо познакомиться с командами, доступными Исполнителю, и с правилами их записи. Так, игра в шахматы теряет всякий смысл, если Исполнитель не представляет себе правил поведения в среде "шахматное поле".

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

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

Программирование (кодирование) — процесс составления программы для компьютера.

image

Для первых электронно-вычислительных машин программы записывались в виде последовательности элементарных операций. Это была очень трудоемкая и неэффективная работа. Для исправления любой ошибки приходилось переделывать всю программу и снова записывать ее в память.

Поэтому впоследствии были разработаны специальные языки программирования, которые позволяют удобно и наглядно представить алгоритм решения задачи. Первым алгоритмическим языком для создания компьютерных программ был АЛГОЛ (60-е годы). Очень скоро появились и другие языки: Фортран, ПЛ, Бейсик, Паскаль и др. Каждый из них нес в себе какую-нибудь особую идею по более рациональному использованию ресурсов компьютера и усовершенствованию формы представления программы.

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

Программы, так же как и алгоритмы, обладают свойствами дискретности и детерминированности. Верно составленные программы должны быть конечны и правильны. Хорошие программы обладают свойством массовости.

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

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

image    Процедура — вспомогательная программа, которая вызывается из другой программы.

В течение жизни человек постоянно расширяет свой словарный запас. Услышав или прочитав новое слово, вы иногда не понимаете, о чем идет речь, пока не сопоставите это слово с уже знакомыми понятиями. Столкнувшись с новым явлением, мы стараемся подобрать для него название, иногда придумывая его, но обязательно объясняя с помощью уже известных слов. Таким образом увеличиваются наши знания.

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






Наверх