Espressione Loops: while...do

L'espressione while...do viene usata per eseguire l'esecuzione iterativa (ciclo) mentre una condizione di test specificata è true.

Sintassi

while test-expression do
    body-expression

Osservazioni:

L'espressione test viene valutata; se è true, viene eseguita l'espressione del corpo e l'espressione di test viene valutata di nuovo. L'espressione del corpo deve avere il tipo unit. Se l'espressione di test è false, l'iterazione termina.

Nell'esempio seguente viene illustrato l'uso dell'espressione while...do .

open System

let lookForValue value maxValue =
  let mutable continueLooping = true
  let randomNumberGenerator = new Random()
  while continueLooping do
    // Generate a random number between 1 and maxValue.
    let rand = randomNumberGenerator.Next(maxValue)
    printf "%d " rand
    if rand = value then
       printfn "\nFound a %d!" value
       continueLooping <- false

lookForValue 10 20

L'output del codice precedente è un flusso di numeri casuali compresi tra 1 e 20, l'ultimo dei quali è 10.

13 19 8 18 16 2 10
Found a 10!

Nota

È possibile usare while...do nelle espressioni di sequenza e in altre espressioni di calcolo, nel qual caso viene usata una versione personalizzata dell'espressione while...do . Per altre informazioni, vedere Sequenze, espressioni asincrone, espressioni task ed espressioni di calcolo.

Vedi anche