Difference between revisions of "Basic Pascal Tutorial/Chapter 3/WHILE..DO"
From Lazarus wiki
Jump to navigationJump to searchJwdietrich (talk | contribs) |
m (Fixed syntax highlighting) |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{WHILE..DO}} | ||
+ | {{TYNavigator|FOR..DO|REPEAT..UNTIL}} | ||
+ | |||
+ | == While ... DO loops == | ||
+ | |||
3Db - WHILE..DO (author: Tao Yue, state: unchanged) | 3Db - WHILE..DO (author: Tao Yue, state: unchanged) | ||
The pretest loop has the following format: | The pretest loop has the following format: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
while BooleanExpression do | while BooleanExpression do | ||
statement; | statement; | ||
Line 8: | Line 14: | ||
The loop continues to execute until the Boolean expression becomes <tt>FALSE</tt>. In the body of the loop, you must somehow affect the Boolean expression by changing one of the variables used in it. Otherwise, an infinite loop will result: | The loop continues to execute until the Boolean expression becomes <tt>FALSE</tt>. In the body of the loop, you must somehow affect the Boolean expression by changing one of the variables used in it. Otherwise, an infinite loop will result: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
a := 5; | a := 5; | ||
while a < 6 do | while a < 6 do | ||
Line 15: | Line 22: | ||
Remedy this situation by changing the variable's value: | Remedy this situation by changing the variable's value: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
a := 5; | a := 5; | ||
while a < 6 do | while a < 6 do | ||
Line 26: | Line 34: | ||
The <tt>WHILE ... DO</tt> loop is called a pretest loop because the condition is tested before the body of the loop executes. So if the condition starts out as <tt>FALSE</tt>, the body of the <tt>while</tt> loop never executes. | The <tt>WHILE ... DO</tt> loop is called a pretest loop because the condition is tested before the body of the loop executes. So if the condition starts out as <tt>FALSE</tt>, the body of the <tt>while</tt> loop never executes. | ||
− | + | == See also == | |
− | + | ||
− | + | * [[FOR..DO|FOR ...DO loops]] | |
− | + | * [[Until|Repeat... Until loops]] | |
− | + | * [[for-in_loop|For... in loops]] | |
− | + | {{TYNavigator|FOR..DO|REPEAT..UNTIL}} |
Revision as of 10:50, 4 March 2020
│
български (bg) │
English (en) │
français (fr) │
日本語 (ja) │
中文(中国大陆) (zh_CN) │
While ... DO loops
3Db - WHILE..DO (author: Tao Yue, state: unchanged)
The pretest loop has the following format:
while BooleanExpression do
statement;
The loop continues to execute until the Boolean expression becomes FALSE. In the body of the loop, you must somehow affect the Boolean expression by changing one of the variables used in it. Otherwise, an infinite loop will result:
a := 5;
while a < 6 do
writeln (a);
Remedy this situation by changing the variable's value:
a := 5;
while a < 6 do
begin
writeln (a);
a := a + 1
end;
The WHILE ... DO loop is called a pretest loop because the condition is tested before the body of the loop executes. So if the condition starts out as FALSE, the body of the while loop never executes.