Infinite loop/fr
From Lazarus wiki
Jump to navigationJump to search
│
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
Une boucle infinie (aussi appelée boucle sans fin) est une boucle qui ne finit jamais.$ Dans la boucle, les instructions sont répétées indéfiniment.
while true do
begin
end;
repeat
until false;
Toutefois, de telles constructions sont des cas particuliers, dans la pratique assez rares. Un exemple est une boucle d'interrogation d'événement dans les programmes avec IHM graphique. La présence d'une boucle infinie peut être le signe d'une erreur de programmation.
Instruction Break
Les boucles "While True Do" ou "Repeat/fr Until/fr False/fr" semblent inifines au premier regard, mais il y a une manière de s'échapper de la boucle avec Break.
var
i:integer;
begin
i := 0;
while true do
begin
i := i + 1;
if i = 100 then break;
end;
end;
var
i:integer;
begin
i := 0;
repeat
i := i + 1;
if i = 100 then break;
until false;
end;
Break est aussi permis dans les boucles For/fr/For.