Houla, manifestement tu n'as pas saisi le principe du passage des paramètres.
Une procédure ou une fonction est un sous-programme qui reçoit les données à traiter. Normalement, elle n'a pas à s'occuper d'autre chose que les données qui lui sont fournies.
Dans le cas présent, une procédure suffit car je ne vois pas trop quelle valeur une fonction pourrait retourner. On sait juste qu'elle reçoit en paramètre un tableau de type TTableau et qu'elle doit le modifier. Son en-tête sera donc :
Procedure Zero (var tableau : TTableau);
Pourquoi ai-je appelé mon paramètre tableau, et pas t comme dans le programme principal ? Parce que la procédure doit être considérée comme un sous-programme indépendant dont le paramètre passé est une variable à part entière. J'ai donc fait exprès de nommer le tableau tableau et non t pour bien le montrer.
A l'intérieur de la procédure, il s'agit donc d'assigner 0 à tous les éléments de la variable tableau à l'aide d'une boucle for :
1 2 3 4 5 6
| Procedure Zero (var tableau : TTableau);
Var i : Integer;
Begin
for i := 1 to N do
tableau[i] := 0;
End; |
A présent, il faut appeler la procédure dans le programme principal :
1 2 3 4 5
| Begin (* Programme principal *)
{ ... }
Zero(t);
{ ... }
End. |
Si tu parviens à comprendre le principe exposé ci-dessus, tu es sauvé.
Partager