ПредишенСледващото

Онлайн урок Паскал

видове процедура. Опции - функции и параметри - процедура.

Процедурни видове - това е иновация на Borland (в стандартния Паскал тези видове не са). Основната цел на тези видове - програмист да осигури гъвкави средства за предаване функции и процедури като действителните параметри за лечение на други процедури и функции.

Prod = Процедура (а, б, в: Real; Var г: Real);

PROC2 = Процедура (Var а, Ь);

Func1 = Функция: String;

Func2 = Функция (VAR ите: String): Real;

Както може да се види от горните примери, има два типа на лечение: вид процедура, както и вида на функция.

Пример 8.3 илюстрира механизъм предаване процедури като действителните параметри на повикването. Програмата показва таблица с две функции:

sin1 (х) = (син (х) + 1) * Exp (-x)

COS-1 (х) = (COS (х) + 1) * Exp (-x).

Изчисляването и отпечатването на тези функции се изпълняват в процедурата PRINTFUNC, които се предават като параметри в позиция брой N на екрана, където ще бъдат показани на следващата изхода (чрез този изход параметър се осъществява в две колони) и функцията.

Func = Функция (х: Реал). Реал;

Процедура PrintFunc (XPos: Byte; F: Func);

PrintFunc (40, COS-1)

Моля, имайте предвид: да се установят постоянни контакти и функции SIN1 процедура COS-1 PRINTFUNC те трябва да се компилира с очакването на далечен модел памет. Ето защо програмата добавя стандартен директива FAR веднъж заглавията на функции. Този режим трябва да бъдат събирани всички процедури (функции), които се подават като действителните параметри на разговора.

Стандартни процедури (функции) Turbo Pascal не могат да бъдат прехвърлени обмислен начин.

Променливи процедурни видове могат да бъдат обявени в програмата, като този:

стр. масив [1..N] на PROC1;

Променливи процедурни видове право да зададете като стойности имена подходящи съчетания. След тази задача името на променливата става синоним на името на подпрограма, например:

Proc = Процедура (п: дума; Var на: Байт);

ProcVar: Proc; х, у. Байт;

Процедура Procl (х: дума; Var у: Byte); далеч;

ако х> 255 тогава

Свързани статии

Подкрепете проекта - споделете линка, благодаря!