Loops: for...to Expression (F#)
The for...to expression is used to iterate in a loop over a range of values of a loop variable.
for identifier = start [ to | downto ] finish do
body-expression
Remarks
The type of the identifier is inferred from the type of the start and finish expressions. Types for these expressions must be 32-bit integers.
Although technically an expression, for...to is more like a traditional statement in an imperative programming language. The return type for the body-expression must be unit. The following examples show various uses of the for...to expression.
// A simple for...to loop.
let function1() =
for i = 1 to 10 do
printf "%d " i
printfn ""
// A for...to loop that counts in reverse.
let function2() =
for i = 10 downto 1 do
printf "%d " i
printfn ""
function1()
function2()
// A for...to loop that uses functions as the start and finish expressions.
let beginning x y = x - 2*y
let ending x y = x + 2*y
let function3 x y =
for i = (beginning x y) to (ending x y) do
printf "%d " i
printfn ""
function3 10 4
The output of the previous code is as follows.
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
See Also
Reference
Loops: for...in Expression (F#)
Loops: while...do Expression (F#)