R语言 循环

可能有一种情况,当你需要执行一段代码几次。 通常,顺序执行语句。 首先执行函数中的第一个语句,然后执行第二个语句,依此类推。

编程语言提供允许更复杂的执行路径的各种控制结构。

循环语句允许我们多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式 -

图片

R编程语言提供以下种类的循环来处理循环需求。 单击以下链接以检查其详细信息。

Sr.No.循环类型和描述
1repeat循环
多次执行一系列语句,并简化管理循环变量的代码。
2while循环
在给定条件为真时,重复语句或语句组。 它在执行循环体之前测试条件。
3for循环
像while语句,不同之处在于它测试在循环体的端部的条件。

R语言 Repeat循环

Repeat循环重复执行相同的代码,直到满足停止条件。

语法

在R中创建Repeat循环的基本语法是 -

repeat { 
   commands 
   if(condition) {
      break
   }
}
流程图

这里写图片描述

v <- c("Hello","loop")
cnt <- 2

repeat {
   print(v)
   cnt <- cnt+1

   if(cnt > 5) {
      break
   }
}

当上面的代码被编译和执行时,它产生以下结果 -

[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 

R语言 While循环

While循环一次又一次地执行相同的代码,直到满足停止条件。

语法

在R中创建while循环的基本语法是 -

while (test_expression) {
   statement
}
流程图

这里写图片描述
while循环的关键点是循环可能永远不会运行。 当条件被测试并且结果为false时,循环体将被跳过,while循环之后的第一条语句将被执行。

v <- c("Hello","while loop")
cnt <- 2

while (cnt < 7) {
   print(v)
   cnt = cnt + 1
}

当上面的代码被编译和执行时,它产生以下结果 -

[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"
[1] "Hello"  "while loop"

R语言 For循环

For循环是一种重复控制结构,允许您有效地编写需要执行特定次数的循环。

语法

在R中创建一个for循环语句的基本语法是 -

for (test_expression) {
   statement
}
流程图

这里写图片描述

R的for循环是特别灵活的,因为它们不限于整数,或者输入中的偶数。 我们可以传递字符向量,逻辑向量,列表或表达式。

v <- LETTERS[1:4]
for ( i in v) {
   print(i)
}

当上面的代码被编译和执行时,它产生以下结果 -

[1] "A"
[1] "B"
[1] "C"
[1] "D"

循环控制语句

循环控制语句从其正常序列改变执行。 当执行离开作用域时,在该作用域中创建的所有自动对象都将被销毁。
R语言支持以下控制语句。 单击以下链接以检查其详细信息。

Sr.No.控制语句和描述
1break语句
终止循环语句,并将执行转移到循环后立即执行的语句。
2next语句
next语句模拟R语言switch语句的行为。

R语言 break语句

R语言中的break语句有以下两种用法:

当在循环中遇到break语句时,循环立即终止,并且程序控制在循环之后的下一语句处恢复。
它可以用于终止switch语句中的情况。

语法

在R中创建break语句的基本语法是 -

break
流程图

这里写图片描述

v <- c("Hello","loop")
cnt <- 2

repeat {
   print(v)
   cnt <- cnt + 1

   if(cnt > 5) {
      break
   }
}

当上面的代码被编译和执行时,它产生以下结果 -

[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 
[1] "Hello" "loop" 

R语言 next语句

R语言存在next语句,当我们想跳过循环的当前迭代而不终止它时便可使用next。 遇到next时,R解析器跳过本次迭代,并开始循环的下一次迭代。

语法

在R中创建Next语句的基本语法是 -

next
流程图

这里写图片描述

v <- LETTERS[1:6]
for ( i in v) {

   if (i == "D") {
      next
   }
   print(i)
}

当上面的代码被编译和执行时,它产生以下结果 -

[1] "A"
[1] "B"
[1] "C"
[1] "E"
[1] "F"
  • 13
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值