Изучение принципов алгоритмического программирования на языке Pascal



         

Подпрограммы - часть 2


Заголовок процедуры и функции представлен ниже:

Procedure <Идентификатор> [(<параметры>)];

Function <Идентификатор> [(<параметры>)] : <тип>;

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

[var] <идентификатор> : <идентификатор_типа>

и разделённых точкой с запятой.

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

Указание слова var означает, что данный параметр является ссылкой на переменную. Все изменения его значения, произошедшие в ходе выполнения подпрограммы, передаются в вызвавшую программу.

Следует обратить внимание на то, что при указании типа можно указывать лишь его идентификатор. Если требуется передать значение пользовательского или сложного типа, то требуется предварительно объявить идентификатор этого типа в секции type основной программы.

Если несколько параметров имеют одинаковый статус «var» и тип, допустимо их группировать в пределах одной записи, например,

Procedure PutPoint(X,Y,Z:Real; Var A,B:Integer);

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

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

<Идентификатор> (<выражение1>,…,<выражениеn>);

В момент вызова произойдёт вычисление значений выражений, проверка соответствия типов и подстановка этих значений параметрам подпрограммы в порядке их перечисления в заголовке.

Если параметр является переменным, то есть, объявленным со словом Var, то он может быть связан только с переменной того же типа.





Содержание  Назад  Вперед