Pętle: while...do — Wyrażenie

Wyrażenie while...do jest używane do wykonywania iteracyjnego wykonywania (pętli), gdy określony warunek testu jest spełniony.

Składnia

while test-expression do
    body-expression

Uwagi

Wyrażenie test-jest obliczane. Jeśli jest trueto , wyrażenie-treść jest wykonywane, a wyrażenie testowe zostanie ponownie ocenione. Wyrażenie-treść musi mieć typ unit. Jeśli wyrażenie testowe to false, iteracja kończy się.

Poniższy przykład ilustruje użycie while...do wyrażenia.

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

Dane wyjściowe poprzedniego kodu to strumień liczb losowych z zakresu od 1 do 20, z których ostatni to 10.

13 19 8 18 16 2 10
Found a 10!

Uwaga

Można użyć while...do w wyrażeniach sekwencji i innych wyrażeniach obliczeniowych, w tym przypadku jest używana niestandardowa wersja while...do wyrażenia. Aby uzyskać więcej informacji, zobacz Sekwencje, Wyrażenia asynchroniczne, Wyrażenia zadań i Wyrażenia obliczeniowe.

Zobacz też