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)
新闻热点
疑难解答