while循環在其它高級語言(如C、C++、C#、Java)中,被稱為“當”型循環。即當條件為真時,執行循環體中的相關語句。在R語言中,while循環與之相同。
在R語言中,while循環的語法格式如下:
while(cond){expr}
其中,cond是一個條件表達式,其值應為TRUE或FALSE;expr是當cond條件為TRUE時要執行的表達式或若干語句。當cond為TRUE時,要反復執行expr,否則停止循環,進入while循環后面的其它語句中去執行。
下面舉幾個例子:
舉例1:使用while循環輸出向量中的元素
x <- c(11,12,13,14,15)
i <- 1
n <- length(x)
while( i <= n)
{
print(x[i])
i <- i + 1
}
舉例2:使用while循環求1~100所有整數之和。
i <- 1 #循環計數
sum <- 0 #保存用于存儲之和sum
while( i <= 100)
{
sum <- sum + i #將每個i加入到sum中
i <- i + 1 #循環計數量加1
}
print(sum) #輸出和
舉例3:求Fibonacci數列的前N項
i <- 3
N <- 20
F <- NA
F[1] <- F[2] <- 1
while(i <= N)
{
F[i] <- F[i - 2] + F[i - 1]
i <- i + 1
}
print(F)
新聞熱點
疑難解答