Cette instruction permet de répéter plusieurs fois une même séquence de traitement.
La syntaxe est la suivante :
while test do
begin
......
end
Le bloc d'instruction situé entre begin et end est exécuté tant que l'expression booléenne test s'évalue true.
program jeu; const valeur = 13; var essai : integer; begin essai:=0; while (essai<>valeur) do begin writeln('entrez une valeur entiere'); readln(essai); end; writeln('Bravo, vous avez trouvez la bonne valeur'); end.
L'expression booléenne test doit respecter quelques
règles pour que l'instruction ait un sens.
Ainsi la séquence d'instructions suivante est suspecte :
x:=1;
while x>0 do
writeln(x);
(Lorsqu'il n'y a qu'une seule instruction entre le
begin et le end ceux-ci ne sont
pas obligatoires.)
Cependant ces deux points ne suffisent pas pour que la boucle s'arrête :
x:=1; while x>0 do begin writeln(x); x:=x+1; end;