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

4.2. Описание и вызов процедур.

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

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

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

Синтаксис заголовка процедуры:

PROCEDURE < имя процедуры > [( <список формальных параметров >)];

Например :

PROCEDURE PR1 ( A,B,C : INTEGER; VAR S: REAL);

Здесь PR1 - имя процедуры, а А,В,С,S - имена переменных, являющих-ся параметрами.

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

Оператор процедуры служит для вызова процедуры из основной программы или из другой процедуры(функции).

Вызов осуществляется в следующей форме:

<имя процедуры > [(<список фактических параметров>)];

Таким образом, для приведенного заголовка процедуры можно написать такой оператор вызова:

PR1 (A,B,C,S);

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

наверх

4.3. Описание функции.

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

Синтаксис заголовка функции:

FUNCTION < имя функции >[(<список формальных параметров>)]: <тип результата>;

Например:

FUNCTION PRF (A,B,C: INTEGER) : REAL;

Отличие описания функции от процедуры:

  • результатом обращения к функции может быть одно единственное значение;

  • идентификатор результата не указывается в списке формальных параметров;

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

  • после списка формальных параметров задается тип результата;

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

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

S:=PRF ( A,B,C); Writeln ( PRF ( A,B,C)); If PRF ( A,B,C)>20 then K=K+1;

наверх