[Tableau] Array type required
Hello à tous,
Je tente de faire un exercice sur les tableaux, lorsque je teste mon script, j'ai l'erreur array type required....
(ps : je ne sais pas si le code en question est correct pour l'ennoncé ci-dessous, mais je n'arrive pas à trouver l'erreur du compilateur...)
Voici l'énnoncé de l'exercice...
Citation:
On vous donne un tableau statique d’entiers contenant nb_elem significatifs (les éléments significatifs sont consécutifs et commencent à l’indice minimum du tableau).
On vous demande d’écrire une routine (procédure ou fonction selon votre choix) qui modifie un tel tableau.
La modification consiste à réduire le nombre de composantes en « additionnant des contenus ».
Dès que la somme de composantes successives atteint ou dépasse 10 on remplace l’ensemble de ces composantes par cette somme.
On parcourt ainsi le tableau pour remplacer des suites de composantes par leur somme.
Si la dernière suite n’atteint pas 10, on remplace cette suite par le nombre de composantes qu’elle contient.
On vous demande de minimiser le nombre d’échanges au sein du tableau, ainsi que le nombre de tests effectués.
PS : tout doit se faire au sein du même tableau
Code:
1 2
| type ttab = array[1..10] of integer;
var a : ttab; |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| function question (t : ttab; elt : integer):integer;
var nbre, i, indice, somme : integer;
begin
result:=1;
somme:=0;
indice:=1;
i:=1;
nbre:=0;
WHILE elt>indice DO begin
somme:=t[indice]+somme;
if somme>=10 THEN
begin
result[i]:=somme;
inc(i);
nbre:=0;
end
else inc(nbre);
inc(indice);
end;
if (nbre<>0) then result[i]:=nbre;
end; |
Merci d'avance pour votre aide :-)