|
|
|
|
By Andrew J. Wozniewicz
Milwaukee, August 5, 2008
Here is an example showing how to use loops in WANTScript.
There are three kinds of loop constructs available right now: WHILE-loop, REPEAT-loop, and FOR-loop. One difference with Pascal is that the FOR-loop has an optional step clause (alas, not illustrated in the example below).
Also, the keyword loop can be used instead of do, and/or repeat, so that while-do is equivalent to while-loop, for-do is equivalent to for-loop, and repeat-until is equivalent to loop-until. In other words, loop can appear whenever do can appear, and vice versa; likewise, loop can appear whenever repeat can appear, and vice-versa.
project FloydsTriangle WriteLn("Floyd's Triangle using WHILE loop")
FloydsTriangleWHILE(5)
WriteLn
WriteLn("Floyd's Triangle using FOR loop")
FloydsTriangleFOR(5)
WriteLn
WriteLn("Floyd's Triangle using REPEAT loop")
FloydsTriangleUNTIL(5)
import System.Utilities
procedure FloydsTriangleFOR(MaxRows)
var Row, Column
var Number
Number = 0
for Row := 1 to MaxRows loop
for Column := 1 to Row do
Number++
Write( PadLeft(Number,3) )
end
WriteLn
end
end
procedure FloydsTriangleWHILE(MaxRows)
var Row, Column
var Number
Number = 0
Row := 1
while Row <= MaxRows loop
Column := 1
while Column <= Row do
Number++
Write( PadLeft(Number,3) )
Column++
end
WriteLn
Row++
end
end
procedure FloydsTriangleUNTIL(MaxRows)
var Row, Column
var Number
Number = 0
Row := 1
loop
Column := 1
while Column <= Row do
Number++
Write( PadLeft(Number,3) )
Column++
end
WriteLn
Row++
until Row > MaxRows
end
end
Here is the output:
Floyd's Triangle using WHILE loop
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
Floyd's Triangle using FOR loop
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
Floyd's Triangle using REPEAT loop
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
-Andrew
|