R语言 循环(for, while, repeat)

R语言 循环(for, while, repeat)

在R编程中,我们需要一个控制结构来多次运行一个代码块。循环属于最基本、最强大的编程概念。循环是一个控制语句,允许一个语句或一组语句的多次执行。循环 “这个词意味着循环或迭代。

循环问的是一个查询,在循环结构中。如果该查询的答案需要一个动作,它将被执行。同样的查询会被反复询问,直到采取进一步的行动。任何一次在循环中提出的查询,都被称为循环的迭代。循环有两个组成部分,控制语句和循环体。 控制语句根据条件控制语句的执行,而循环体由要执行的语句集组成。

为了在程序中无数次地执行相同的代码行,程序员可以简单地使用一个循环。

在R编程中,有三种类型的循环

  • For 循环
  • While 循环
  • repeat循环

R语言 For循环

这是一种控制语句的类型,它使人们能够轻松地构建一个必须多次运行语句或一组语句的循环。For 循环通常用于对一个序列的项目进行迭代。它是一个入口控制的循环,在这个循环中,首先测试测试条件,然后执行循环的主体,如果测试条件为假,则不执行循环主体。

R – For 循环 语法

for (value in sequence)
{
  statement
}
R

For 循环流程图

R语言中的循环(for, while, repeat)

下面是一些程序来说明R编程中 for 循环的使用。

例1: 使用R语言中的for循环来显示1到5的数字的程序。

# R program to demonstrate the use of for loop
 
# using for loop
for (val in 1: 5)
{
    # statement
    print(val)
}
R

输出

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
R

在这里,for循环在一个数字为1到5的序列上迭代,在每一次迭代中,序列中的每一项都被显示。

例2: 显示一个星期的日子的程序。

# R program to illustrate
# application of for loop
 
# assigning strings to the vector
week < - c('Sunday',
           'Monday',
           'Tuesday',
           'Wednesday',
           'Thursday',
           'Friday',
           'Saturday')
 
# using for loop to iterate
# over each string in the vector
for (day in week)
{
 
    # displaying each string in the vector
    print(day)
}
R

输出

[1] "Sunday"
[1] "Monday"
[1] "Tuesday"
[1] "Wednesday"
[1] "Thursday"
[1] "Friday"
[1] "Saturday"
R

在上面的程序中,最初,一周中的所有日子(字符串)都被分配给向量week。然后用for循环来迭代一周中的每个字符串。在每次迭代中,都会显示一周中的每一天。

R语言 while循环

这是一种控制语句,它将重复运行一个或一组语句,除非给定的条件为假。它也是一个入口控制的循环,在这个循环中,首先测试测试条件,然后执行循环的主体,如果测试条件为假,循环主体将不会被执行。

R – While 循环 语法

while ( condition ) 
{
  statement
}
R

While循环流程图

R语言中的循环(for, while, repeat)

下面是一些程序来说明R编程中 while 循环的使用。

例1: 使用R语言中的while循环来显示1到5的数字的程序。

# R program to demonstrate the use of while loop
 
val = 1
 
# using while loop
while (val <= 5)
{
    # statements
    print(val)
    val = val + 1
}
R

输出

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
R

在while循环的每一次迭代中,都会检查条件并显示val的值,然后递增,直到它变成5,条件变成假,循环结束。

例2: 计算一个数的阶乘的程序。

# R program to illustrate
# application of while loop
 
# assigning value to the variable
# whose factorial will be calculated
n < - 5
 
# assigning the factorial variable
# and iteration variable to 1
factorial < - 1
i < - 1
 
# using while loop
while (i <= n)
{
 
    # multiplying the factorial variable
    # with the iteration variable
    factorial = factorial * i
 
    # incrementing the iteration variable
    i = i + 1
}
 
# displaying the factorial
print(factorial)
R

输出

[1] 120
R

在这里,首先,变量n被分配为5,其阶乘将被计算,然后变量i和阶乘被分配为1。i将被用于循环的迭代,而阶乘将被用于计算阶乘。在循环的每一次迭代中,都要检查条件,即i应该小于或等于5,之后阶乘与i的值相乘,然后i被递增。当i变成5时,循环被终止,5的阶乘即120被显示在循环的范围之外。

R语言 repeat循环

这是一个简单的循环,它将重复运行同一语句或一组语句,直到遇到停止条件。重复循环没有任何条件来终止循环,程序员必须在循环的主体中特别放置一个条件,并使用break语句的声明来终止这个循环。如果在重复循环的主体中没有任何条件,那么它将无限地重复。

R – repeat循环 语法

repeat 
{ 
   statement

   if( condition ) 
   {
      break
   }
}
R

重复循环流程图

R语言中的循环(for, while, repeat)

为了终止 repeat 循环,我们使用一个跳转语句,即 break 关键字。下面是一些程序来说明R编程中重复循环的使用。

例1: 使用R语言中的重复循环显示1到5的数字的程序。

# R program to demonstrate the use of repeat loop
 
val = 1
 
# using repeat loop
repeat
{
    # statements
    print(val)
    val = val + 1
 
    # checking stop condition
    if(val > 5)
    {
        # using break statement
        # to terminate the loop
        break
    }
}
R

输出

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
R

在上述程序中,变量val被初始化为1,然后在重复循环的每个迭代中显示val的值,然后它被递增直到大于5。如果val的值大于5,则使用break语句来终止循环。

例2: 显示一个语句五次的程序。

# R program to illustrate
# the application of repeat loop
 
# initializing the iteration variable with 0
i < - 0
 
# using repeat loop
repeat
{
    # statement to be executed multiple times
    print("Geeks 4 geeks!")
 
    # incrementing the iteration variable
    i = i + 1
 
    # checking the stop condition
    if (i == 5)
    {
        # using break statement
        # to terminate the loop
        break
    }
}
R

输出

[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
[1] "Geeks 4 geeks!"
R

在这里,最初变量i被初始化为0,然后在重复循环的每次迭代中,在打印完Geeks 4 geeks!后,i的值被递增,直到它变成5,并且if语句中的条件变为真,然后,break语句被执行以终止重复循环。

循环中的跳转语句

我们在循环中使用跳转语句,在特定的迭代处终止循环或跳过循环中的特定迭代。循环中最常用的两个跳转语句是。

  • Break语句: break关键字是一个跳转语句,用于在某个特定的迭代处终止循环。

例子

# R program to illustrate
# the use of break statement
 
# using for loop
# to iterate over a sequence
for (val in 1: 5)
{
    # checking condition
    if (val == 3)
    {
        # using break keyword
        break
    }
 
    # displaying items in the sequence
    print(val)
}
R

输出

[1] 1
[1] 2
R

在上面的程序中,如果val的值变成3,那么break语句将被执行,循环将终止。

  • Next语句: Next关键字是一个跳转语句,用于跳过循环中的某个迭代。

例子

# R program to illustrate
# the use of next statement
 
# using for loop
# to iterate over the sequence
for (val in 1: 5)
{
    # checking condition
    if (val == 3)
    {
        # using next keyword
        next
    }
 
    # displaying items in the sequence
    print(val)
}
R

输出

[1] 1
[1] 2
[1] 4
[1] 5
R

在上面的程序中,如果Val的值变成3,那么下一条语句将被执行,因此当前的循环迭代将被跳过。所以3不会显示在输出中。

从以上两个程序中我们可以得出结论,这两个跳转语句的基本区别是: break 语句终止了循环,而 next 语句跳过了循环的某一次迭代。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册