Les procédures et fonctions


Les procédures

L'en-tête

L'en-tête d'une procédure est constitué du mot réservé "PROCEDURE", suivi de l'identificateur de celle-ci et d'une série de paramètres optionnels.

Ø Syntaxe : PROCEDURE ident[([VAR] var1:type1;[VAR] var2:type2;...varn:typeN)];

où ident est l'identificateur de la procédure, var1, var2 et varn des identificateurs de variables, type1, type2 et typeN le type de ces variables.

La partie déclarative

La partie déclarative de la procédure définit les types, les constantes et les variables utilisées au sein de celle-ci. Ils sont locaux, c'est-à-dire qu'ils existent que dans la procédure et ne sont pas accessibles par le programme principal.

De plus, cette partie peut contenir d'autres procédures et fonctions qui seront elles-mêmes locales à cette procédure.

Le corps de la procédure

Celui-ci est délimité par les mots réservés BEGIN et END. Il contient la séquence d'instructions qui traitera le problème.

Dans le corps de la procédure, différentes variables sont utilisables :

=> les variables locales définies dans la déclaration de la procédure;

=> les variables globales définies dans la déclaration du programme principal.

Appel d'une procédure

L'appel d'une procédure sera réalisé en nommant l'identificateur, suivi de la liste des paramètres sans leurs types (si elle existe).

Les fonctions

L'en-tête

L'en-tête d'une fonction est constitué du mot réservé "FUNCTION", suivi de l'identificateur de celle-ci, d'une série de paramètres optionnels et du type du résultat de cette fonction.

Ø Syntaxe :

FUNCTION ident[([VAR] var1:type1;[VAR] var2:type2;...varn:typeN)]:typeres;

où ident est l'identificateur de la procédure, var1, var2 et varn des identificateurs de variables, type1, type2 et typeN et typeres le type de ces variables et du résultat de cette fonction.

La partie déclarative

La partie déclarative de la fonction définit les types, les constantes et les variables utilisées au sein de celle-ci. Ils sont locaux, c'est-à-dire qu'ils existent que dans la fonction et ne sont pas accessibles par le programme principal.

De plus, cette partie peut contenir d'autres procédures et fonctions qui seront elles-mêmes locales à cette procédure.

Le corps de la fonction

Celui-ci est délimité par les mots réservés BEGIN et END. Il contient la séquence d'instructions qui traitera le problème.

Dans le corps de la procédure, différentes variables sont utilisables :

=> les variables locales définies dans la déclaration de la procédure;

=> les variables globales définies dans la déclaration du programme principal.

Appel d'une fonction

L'appel d'une fonction sera réalisé dans une expression puisqu'une fonction renvoie un résultat. Cette expression sera soit une assignation, soit une comparaison.

Différences entre une procédure et une fonction

La différence fondamentale entre une procédure et une fonction est que cette dernière renvoie un résultat par l'intermédiaire de son identificateur. L'appel d'une fonction se fera donc dans une expression tandis que l'appel d'une procédure est considéré comme une instruction simple...