Non prise en compte d'une instruction dans une boucle
Je rencontre un problème que je ne comprends pas:
je fais une boucle while toute simple (enfin je pensais) pour remplir un tableau contenant des noms et à terme d'autres informations.
voici:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| program test;
uses wincrt;
type
personne=record
nom:string;
prenom:integer;
end;
tabEtudiant= array[1..100] of personne;
var i,n:integer;
t:tabEtudiant;
procedure saisiePersonne(var n:integer; var t:tabEtudiant);
var i,encore:integer;
begin
encore:=1;
n:=0;
while encore=1
do begin
n:=n+1;
writeln('Entrez le nom numero ',n,' : ');
readln(t[n].nom);
writeln('voulez vous continuer? oui (1) non (0)');
read(encore);
end;
end;
begin
saisiePersonne(n,t);
end. |
Le problème est que lors du deuxième passage dans la boucle while l'instruction "readln(t[n].nom);" n'est pas prise en compte, je n'arrive pas à entrer un autre nom. Je ne comprends pas??
Si vous avez une idée merci.