Bucles: expresión while...do

La expresión while...do se usa para realizar la ejecución iterativa (en bucle) mientras se cumple una condición de prueba especificada.

Sintaxis

while test-expression do
    body-expression

Comentarios

La expresión test se evalúa; si es true, se ejecuta la expresión body y la expresión de prueba se evalúa de nuevo. La expresión body tiene que tener tipo unit. Si la expresión test es false, finaliza la iteración.

En el siguiente ejemplo de código se muestra el uso de la expresión 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

La salida del código anterior es una secuencia de números aleatorios entre 1 y 20, el último de los cuales es 10.

13 19 8 18 16 2 10
Found a 10!

Nota

Puede usar while...do en expresiones de secuencia y otras expresiones de cálculo, en cuyo caso se usa una versión personalizada de la expresión while...do. Para más información, consulte Secuencias, Expresiones asincrónicas, Expresiones de tareas y Expresiones de cálculo.

Vea también