Infinite loop: Difference between revisions
From Lazarus wiki
Jump to navigationJump to search
(Created page with "{{Infinite loop}} An infinite loop (also known as an endless loop or unproductive loop or a continuous loop) is a loop which never ends. Inside loop, statements are repeated ...") |
No edit summary |
||
Line 2: | Line 2: | ||
An infinite loop (also known as an endless loop or unproductive loop or a continuous loop) is a loop which never ends. | An infinite loop (also known as an endless loop or unproductive loop or a continuous loop) is a loop which never ends. | ||
Inside loop, | Inside loop, [[statement]]s are repeated forever. | ||
<syntaxhighlight> | <syntaxhighlight lang="pascal"> | ||
while true do | while true do | ||
Line 15: | Line 15: | ||
<syntaxhighlight> | <syntaxhighlight lang="pascal"> | ||
repeat | repeat | ||
Line 23: | Line 23: | ||
== [[Break]] statement == | == [[Break|<syntaxhighlight lang="pascal" enclose="none">Break</syntaxhighlight>]] statement == | ||
"[[While]] [[True]] [[Do]]" or "[[Repeat]] [[Until]] [[False]]" loops looks infinite at first glance, | "[[While|<syntaxhighlight lang="pascal" enclose="none">While</syntaxhighlight>]] [[True|<syntaxhighlight lang="pascal" enclose="none">true</syntaxhighlight>]] [[Do|<syntaxhighlight lang="pascal" enclose="none">do</syntaxhighlight>]]" or "[[Repeat|<syntaxhighlight lang="pascal" enclose="none">repeat</syntaxhighlight>]] [[Until|<syntaxhighlight lang="pascal" enclose="none">until</syntaxhighlight>]] [[False|<syntaxhighlight lang="pascal" enclose="none">false</syntaxhighlight>]]" loops looks infinite at first glance, | ||
but there may be a way to escape the loop through | but there may be a way to escape the loop through <syntaxhighlight lang="pascal" enclose="none">break</syntaxhighlight>. | ||
<syntaxhighlight> | <syntaxhighlight lang="pascal"> | ||
var | var | ||
Line 44: | Line 44: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight> | <syntaxhighlight lang="pascal"> | ||
var | var | ||
i:integer; | i:integer; | ||
Line 59: | Line 59: | ||
== See also == | == See also == | ||
* [[True]] | * [[True|<syntaxhighlight lang="pascal" enclose="none">true</syntaxhighlight>]] | ||
* [[False]] | * [[False|<syntaxhighlight lang="pascal" enclose="none">false</syntaxhighlight>]] | ||
* [[Repeat]] [[Until]] | * [[Repeat|<syntaxhighlight lang="pascal" enclose="none">repeat</syntaxhighlight>]] [[Until|<syntaxhighlight lang="pascal" enclose="none">until</syntaxhighlight>]] | ||
* [[While]] [[Do]] | * [[While|<syntaxhighlight lang="pascal" enclose="none">while</syntaxhighlight>]] [[Do|<syntaxhighlight lang="pascal" enclose="none">do</syntaxhighlight>]] | ||
* [[Break]] | * [[Break|<syntaxhighlight lang="pascal" enclose="none">break</syntaxhighlight>]] |
Revision as of 16:00, 1 July 2019
│
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
An infinite loop (also known as an endless loop or unproductive loop or a continuous loop) is a loop which never ends. Inside loop, statements are repeated forever.
while true do
begin
end;
repeat
until false;
Break
statement
"While
true
do
" or "repeat
until
false
" loops looks infinite at first glance,
but there may be a way to escape the loop through 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;