次の方法で共有


ループ: while...do 式

while...do式は、指定したテスト条件が true である間に反復実行 (ループ) を実行するために使用されます。

構文

while test-expression do
    body-expression

注釈

test 式が評価されます。trueされている場合は、body 式が実行され、テスト式が再度評価されます。 body-expression には型unitが必要です。 テスト式が false場合、イテレーションは終了します。

次の例は、 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

前のコードの出力は、1 から 20 までの乱数のストリームであり、最後の値は 10 です。

13 19 8 18 16 2 10
Found a 10!

シーケンス式やその他の計算式で while...do を使用できます。その場合は、 while...do 式のカスタマイズされたバージョンが使用されます。 詳細については、「 シーケンス非同期式タスク式コンピュテーション式」を参照してください。

こちらも参照ください