在R编程中,我们需要一个控制结构来多次运行一个代码块。循环属于最基本、最强大的编程概念。循环是一个控制语句,允许一个语句或一组语句的多次执行。循环 “这个词意味着循环或迭代。
循环问的是一个查询,在循环结构中。如果该查询的答案需要一个动作,它将被执行。同样的查询会被反复询问,直到采取进一步的行动。任何一次在循环中提出的查询,都被称为循环的迭代。循环有两个组成部分,控制语句和循环体。 控制语句根据条件控制语句的执行,而循环体由要执行的语句集组成。
为了在程序中无数次地执行相同的代码行,程序员可以简单地使用一个循环。
在R编程中,有三种类型的循环
- For 循环
- While 循环
- repeat循环
R语言 For循环
这是一种控制语句的类型,它使人们能够轻松地构建一个必须多次运行语句或一组语句的循环。For 循环通常用于对一个序列的项目进行迭代。它是一个入口控制的循环,在这个循环中,首先测试测试条件,然后执行循环的主体,如果测试条件为假,则不执行循环主体。
R – For 循环 语法
for { statement}
For 循环流程图
下面是一些程序来说明R编程中for循环的使用。
例1:使用R语言中的for循环来显示1到5的数字的程序。
using for loopfor { # statement print}
输出
1 2 3 4 5
在这里,for循环在一个数字为1到5的序列上迭代,在每一次迭代中,序列中的每一项都被显示。
例2:显示一个星期的日子的程序。
application of for loop using for loop to iterate displaying each string in the vector print}
输出
"Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"
在上面的程序中,最初,一周中的所有日子(字符串)都被分配给向量week。然后用for循环来迭代一周中的每个字符串。在每次迭代中,都会显示一周中的每一天。
R语言 while循环
这是一种控制语句,它将重复运行一个或一组语句,除非给定的条件为假。它也是一个入口控制的循环,在这个循环中,首先测试测试条件,然后执行循环的主体,如果测试条件为假,循环主体将不会被执行。
R – While 循环 语法
while { statement}
While循环流程图
下面是一些程序来说明R编程中while循环的使用。
例1:使用R语言中的while循环来显示1到5的数字的程序。
using while loopwhile { # statements print val = val + 1}
输出
1 2 3 4 5
在while循环的每一次迭代中,都会检查条件并显示val的值,然后递增,直到它变成5,条件变成假,循环结束。
例2:计算一个数的阶乘的程序。
application of while loop whose factorial will be calculatedn < - 5 and iteration variable to 1factorial < - 1i < - 1 multiplying the factorial variable incrementing the iteration variable i = i + 1} # displaying the factorialprint(factorial)
输出
[1] 120
在这里,首先,变量n被分配为5,其阶乘将被计算,然后变量i和阶乘被分配为1。i将被用于循环的迭代,而阶乘将被用于计算阶乘。在循环的每一次迭代中,都要检查条件,即i应该小于或等于5,之后阶乘与i的值相乘,然后i被递增。当i变成5时,循环被终止,5的阶乘即120被显示在循环的范围之外。
R语言 repeat循环
这是一个简单的循环,它将重复运行同一语句或一组语句,直到遇到停止条件。重复循环没有任何条件来终止循环,程序员必须在循环的主体中特别放置一个条件,并使用break语句的声明来终止这个循环。如果在重复循环的主体中没有任何条件,那么它将无限地重复。
R – repeat循环 语法
repeat { statement if { break }}
重复循环流程图
为了终止repeat循环,我们使用一个跳转语句,即break关键字。下面是一些程序来说明R编程中重复循环的使用。
例1:使用R语言中的重复循环显示1到5的数字的程序。
using repeat looprepeat{ checking stop condition if { to terminate the loop break }}
输出
1 2 3 4 5
在上述程序中,变量val被初始化为1,然后在重复循环的每个迭代中显示val的值,然后它被递增直到大于5。如果val的值大于5,则使用break语句来终止循环。
例2:显示一个语句五次的程序。
the application of repeat loop using repeat looprepeat{ incrementing the iteration variable i = i + 1 using break statement # to terminate the loop break }}
输出
"Geeks 4 geeks!" "Geeks 4 geeks!" "Geeks 4 geeks!" "Geeks 4 geeks!" "Geeks 4 geeks!"
在这里,最初变量i被初始化为0,然后在重复循环的每次迭代中,在打印完Geeks 4 geeks!后,i的值被递增,直到它变成5,并且if语句中的条件变为真,然后,break语句被执行以终止重复循环。
循环中的跳转语句
我们在循环中使用跳转语句,在特定的迭代处终止循环或跳过循环中的特定迭代。循环中最常用的两个跳转语句是。
- Break语句:break关键字是一个跳转语句,用于在某个特定的迭代处终止循环。
例子
the use of break statement to iterate over a sequencefor { using break keyword break } # displaying items in the sequence print}
输出
1 2
在上面的程序中,如果val的值变成3,那么break语句将被执行,循环将终止。
- Next语句:Next关键字是一个跳转语句,用于跳过循环中的某个迭代。
例子
the use of next statement to iterate over the sequencefor { using next keyword next } # displaying items in the sequence print}
输出
1 2 4 5
在上面的程序中,如果Val的值变成3,那么下一条语句将被执行,因此当前的循环迭代将被跳过。所以3不会显示在输出中。
从以上两个程序中我们可以得出结论,这两个跳转语句的基本区别是:break语句终止了循环,而next语句跳过了循环的某一次迭代。