Функцii користувача

Pascal надає користувачу можливiсть самому реалiзувати потрiбнi йому алгоритми в видi функцiй i звертатися до них з програми. Опис функції складається з заголовку та тіла функції.

Формат заголовку:

FUNCTION <iм'я> (формальнi параметри): <тип результату>;

Iм’я функцiї – унiкальний в межах блоку iдентифiкатор. Результат обчислення функцii може мати довiльний скалярний тип, тип String i тип "вказiвник". Тiло функцii являe собою локальний блок, по структурi аналогiчний програмi:

FUNCTION <iм'я> (формальні парамутри) : <тип результату>;

<роздiли описiв>;

Begin

<роздiл операторiв>;

End;

В роздiлi операторiв повинен знаходитися як мiнiмум один оператор, що присвоює iдентифiкаторовi функцiї (iменi) її значення.

Звертання до функцiї здiйснюється по iменi з вказанням списку фактичних аргументiв. Кожен аргумент повинен відповідати формальному параметру, вказаному в заголовку функції, і мати той же тип. Наявність параметрів в функції є необов’язковим.

Приклад:

Скласти функцiю, що реалізує пiднесення до степенi. Перетворимо функцію Z=X^y до виду Ln(Z)=(LnX)*Y при x>0.

Function Pow(x, y: Real): Real;

Begin

if x<0 then pow:=exp(y*Ln(x))

else if x<0 then

begin

Writeln("Увага! Основа степеня вiд"ємна");

pow:= exp(y*Ln(asb(x)))

end

else if y=0 then pow:=1

else pow:=0

End;

Виклик функції: Z=pow(2, 1/3);