while – flow control “WHILE”

while – flow control “WHILE”
使用例: while(expression){rcmd}
目的: rcmdをexpressionが満たされる限り繰り返す(繰り返す条件が決まっている場合)
関連: for, if, break, repeat, length, if

# usage #
while (expression) {
  rcmd
}

##### ----- examples ----- #####
# 正規分布に従う乱数を発生させ、3以上の数値が出た場合に #
# その数値と繰り返し回数を表示する                    #
> rn=0;counter=0;
> while (rn<3) {
+  counter=counter+1
+  rn=rnorm(1)
+ }
> print(c(rn, counter))
[1]    3.1233 1461.0000

# 終了条件は明確だが、繰り返し回数の上限を設定する例   #
# 例1と同じ内容だが、繰り返しの上限を500とする       #
> rn=0;counter=0;maxItr=500;
> while (rn<3 & counter < maxItr) {
+  counter=counter+1
+  rn=rnorm(1)
+ }
> print(c(rn, counter))
[1]  -1.194285 500.000000
##### ----- end examples ----- #####

Leave a Reply