Previous Page Next Page

11.12 Utilité d'un mode de transmission par nom

Le mode de passage des paramètres par nom permet une généralisation très intéressante d'une procédure, que nous allons discuter sur un exemple concret.

Exemple: Soit la procédure:

PROCEDURE Sum (NAME Step, I: Integer; N: Integer;

VAR S: Integer );

BEGIN

I := 1;

S := 0;

WHILE I<=N DO

BEGIN

S := S+Step;

I := I+1;

END {-- WHILE, I>N}

END; {-- Sum}

L'appel

Sum( K, K, M, Res );

fait exécuter le bloc de la procédure dans la version suivante:

K := 1;

S := 0;

WHILE K<=N DO

BEGIN

S := S+K;

K := K+1;

END {-- WHILE, K>N}

L'effet-net de cette procédure est le calcul de la somme des M premiers nombres entiers. Le résultat retourné est contenu dans la cellule-mémoire ayant pour identificateur Res.

L'appel

Sum( A[K], K, M, Res );

où A est du type ARRAY [1..M] OF Integer, fait exécuter le bloc de la procédure dans la version suivante:

K := 1;

S := 0;

WHILE K<=N DO

BEGIN

S := S+A[K];

K := K+1;

END {-- WHILE, K>N}

Dans ce cas, l'effet-net est le calcul de la somme des éléments du tableau A.

Previous Page Next Page


© Aflo Informatique , 2003-2004