FOR...DO Loops in pascal language
FOR...DO is a loop construct in Pascal. Of course, that may raise the question "What is a loop?".
Loops
Looping means repeating a statement or compound statement over and over until some condition is met.
There are three types of loops:
fixed repetition - only repeats a fixed number of times
pretest - tests a Boolean expression, then goes into the loop if TRUE
posttest - executes the loop, then tests the Boolean expression
FOR...DO Loop
In Pascal, the fixed repetition loop is the for loop. The general form is:
for index := StartingLow to EndingHigh do
statement;
The index variable must be of an ordinal data. The index can be used in calculations within the body of the loop, but its value cannot be changed --i.e. count:=5 will cause a program exception.
In Pascal, the for loop can only count in increments --steps-- of 1. A loop can be interrupted using the break statement. An example of using the index is:
sum := 0;
for count := 1 to 100 do
begin
sum := sum + count;
if sum = 38 then break;
end;
The computer would do the sum the long way and still finish it in far less time than it took the mathematician Gauss to do the sum the short way --1+100 = 101. 2+99 = 101. See a pattern? There are 100 numbers, so the pattern repeats 50 times. 101*50 = 5050. This isn't advanced mathematics, its attribution to Gauss is probably apocryphal.--.
In the for-to-do loop, the starting value MUST be lower than the ending value, or the loop will never execute! If you want to count down, you should use the for-downto-do loop:
for index := StartingHigh downto EndingLow do
statement;