Подпрограмма - функция

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

Function имя (а1;...;аn): тип результата;

 
 
Раздел описания локальных меток, констант и переменных

 


Группа операторов
Begin

 

 

End;,

где а1;...;an - список формальных параметров с указанием типа.

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

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

Пример А. Оформить в виде подпрограммы - функции алгоритм возведения в целочисленную степень у=хn.

Function rez1 (n:integer; x:real) : real;

var i:integer;

begin

rez1:=1;

for i:=1 to n do

rez1:=rez1*x;

end;

 

Пример Б. Оформить в виде подпрограммы - функции алгоритм возведения вещественного числа в вещественную степень y=ax.

Function rez2(x:real; a:real) : real;

begin

Rez2:=exp(x*ln(a));

end;

 

В примере Б подстепенное выражение не может принимать отрицательное значение или быть равным нулю. Впримере А может быть и отрицательным.

Переменные n, x, i примера A определены только в теле подпрограммы -функции. Вне тела функции они не определены, т.е. не существуют. Аналогичными пе­ременными являются параметры а, х впримереБ.

Обращение к подпрограмме-функции осуществляется по имени функ­ции с указанием в скобках вместо формальных параметров фактических. Причем имена формальных и фактических параметров могут и не совпа­дать, но их последовательность, количество и тип должны обязательно соответствовать друг другу. Так, обращение к функции rez2 примера Б может быть таким:

у:=а*rez2(n,х);,

что соответствует решению задачи у=а*хn. Здесь переменная n обяза­тельно должна быть описана как переменная вещественного типа.

В примере Б переменные х и а являются формальными параметрами - переменные, формально присутствующие в подпрограмме и опреде­ляющие тип и место подстановки фактических значений, передаваемых из вызывающей программы. Конкретные (фактические) значения передают фактические параметры при обращении в вызывающей программе. Так, при рассмотренном выше обращении к функции rez2 фактическими параметрами являются переменные n и x.

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

 








Дата добавления: 2015-08-08; просмотров: 620;


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

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

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

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