Процедуры и функции пользователя.

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

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

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

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

Параметром называется переменная, которой присваивается некоторое значение в рамках указанного применения.

Различают формальные параметры- параметры, определенные в заголовке подпрограммы, и фактические параметры — параметры, задающие конкретные значения при обращении к подпрограмме. При обращении к подпрограмме ее формальные параметры замещаются фактическими, переданными из главной программы.

Вопросы по написанному:

1. Что такое подпрограмма. Разновидности подпрограмм.

2. Что такое вызов подпрограммы.

3. Как осуществляется работа подпрограммы.

4. Что такое параметр. Разновидности параметров.

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

Функция- именованная часть программы, которую можно вызвать по имени, возвращающая в точку вызова скалярное значение.

Зам! Функция может входить в выражение как операнд, а процедура НЕТ!

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

 

Описание процедуры включает заголовок (имя) и тело процедуры. Заголовок состоит из зарезервированного слова procedure, идентификатора (имени) процедуры и, необязательного, заключенного в круглые скобки, списка формальных параметров с указанием типа каждого параметра. Тело процедуры представляет собой отдельный блок, по структуре аналогичный программе:

 

procedure <имя> (список формальных параметров);

const…;

type …;

var …;

begin

<операторы>

end;

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

function <имя>(Формальные параметры) : <тип результата>;

const ...;

type

var ...;

begin

<операторы>

end;

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

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








Дата добавления: 2016-05-25; просмотров: 643;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.