Процедура деп белгілі бір идентификатормен аталып, сол атпен бағдарламаның кез-келген жерінен шақырып, белгілі бір есептеулерді орындауға болатын бағдарламаның тәуелсіз бөлігін айтады. Процедураның құрылымы бағдарлама құрылымына ұқсас келеді.
Бағдарламада процедураны пайдалану үшін процедураның атын нақты параметрлерімен бірге жазып шақырады, ол жерді процедураны шақыру нүктесі деп атайды. Бағдарлама процедураның шақыруын оқыған кезде процедураның орындалуы басталады. Мысалы бағдарлама тақырыбы төмендегідей болса:
PROCEDURE SUMMA(N, M,X:INTEGER);
онда процедураны бағдарламаны мынадай жолмен шақыруға болады:
SUMMA(19,A,50);
жақшадағы 19, А, 50 - нақты параметрлер болып табылады. Нәтижесінде процедурадағы формальды параметрлер мынадай мәндерге ие болады:
N=19, M=A, X=50.
Процедура шақыру процесінде формальды параметрлердің мәндері нақты параметрлердің мәнін қабылдайды да, процедура денесіндегі есептеулерде сол жаңа мәндер пайдаланылады.
Процедураның параметрлері мәндік және айнымалы болып екіге бөлінеді. Мәндік (аргументгік) параметрлер тек қана нақты параметрлердің мәнін өзіне қабылдайды да, қайтып оларға өзінің мәнін бере алмайды. Ал айнымалы параметрлер нақты параметрлердің мәнін қабылдап, оларды процедураның орындалу барысында өзгертіп, нақты параметрлерге жаңа мәндерін қайтып береді. Процедураның бір орындалу барысында негізгі бағдарламаның бірден бірнеше идентификаторлары жаңа мән қабылдай алады. Айнымалы параметрлердің алдына VAR қызметші сөзі қойылып жазылады. Мысалы:
PROCEDURE Misal(A, B:Integer; VAR X, Y:Longint);
VAR Silnteger;
BEGIN
S:=A+5*B; X:=Sqr(S); Y:=Sqr(X);
END;
Бұл процедураны бағдарламалық тексте төмендегідей жазып шақыруға болады:
Misal(10,5,K,І);
Бағдарлама орындалу барысында Misal(l0,5,K,І) шақыру идентификаторын оқып, басқаруды Misal процедурасына жібереді де, төмендегідей әрекеттер орындалады:
1. Процедураның А, В, X, Ү формальды параметрлері 10, 5, К, I нақты параметрлердің мәнін қабылдайды:
А=10, В=5, Х=К, Ү=І;
2. Процедура денесіндегі операторлар орындалады:
3=10+5*5=35, Х=35*35=1225, Ү=1225* 1225=1500625;
3. VAR қызметші сөзінен кейін жазылған формальды X және Ү параметрлері процедураның орындалу барысында меншіктеген өздерінің жаңа мәндерін нақты К-мен I параметрлеріне бергеннен кейін, басқару Misal(10,5,K,l) шақыру идентификаторынан кейін тұрған операторға өтеді;
К=Х=1225, І=Ү=1500625.
4. Әрі қарай бағдарламаның есептеулерінде К және I айнымалылары жаңа меншіктеген мәндерімен қатысады.