RWhileループ


ループ

指定された条件に達する限り、ループはコードのブロックを実行できます。

ループは、時間を節約し、エラーを減らし、コードを読みやすくするため、便利です。

Rには2つのループコマンドがあります。

  • while ループ
  • for ループ

RWhileループ

ループを使用whileすると、条件がTRUEである限り、一連のステートメントを実行できます。

6未満であるi限り印刷します。i

i <- 1
while (i < 6) {
  print(i)
  i <- i + 1
}

上記の例では、ループは1から5の範囲の数値を生成し続け6 < 6ます。がFALSEであるため、ループは6で停止します。

ループでは、関連する変数を準備する必要があります。whileこの例では、インデックス変数を定義する必要がありますi。これを1に設定します。

注: iをインクリメントすることを忘れないでください。そうしないと、ループが永久に続きます。


壊す

このbreakステートメントを使用すると、while条件がTRUEの場合でも、ループを停止できます。

iが4に等しい場合は、ループを終了します。

i <- 1
while (i < 6) {
  print(i)
  i <- i + 1
  if (i == 4) {
    break
  }
}

が4()に等しいbreak場合にステートメントを使用してループを終了することを選択したため、ループは3で停止しますii == 4


このnextステートメントを使用すると、ループを終了せずに反復をスキップできます。

3の値をスキップします。

i <- 0
while (i < 6) {
  i <- i + 1
  if (i == 3) {
    next
  }
  print(i)
}

ループが値3を渡すと、それをスキップしてループを続行します。


Yahtzee!

もし..それ以外の場合はwhileループと組み合わせる

実用的な例を示すために、Yahtzeeのゲームをプレイするとしましょう!

「Yahtzee!」を印刷します サイコロの数が6の場合:

dice <- 1
while (dice <= 6) {
  if (dice < 6) {
    print("No Yahtzee")
  } else {
    print("Yahtzee!")
  }
  dice <- dice + 1
}

ループが1から5の範囲の値を渡すと、「NoYahtzee」と出力されます。値6を渡すと、「Yahtzee!」と出力されます。