红宝石 |循环(for、while、do..while、until)
编程语言中的循环是一种功能,当某些条件评估为真或假时,它为重复执行一组指令或函数扫清了道路。 Ruby 提供了不同类型的循环来处理程序中基于条件的情况,以使程序员的任务更简单。 Ruby 中的循环是:
- while 循环
- for 循环
- 做..while循环
- 直到循环
while 循环
要测试的条件,在循环开始时给出,所有语句都会执行,直到给定的布尔条件满足。当条件变为假时,控件将从while循环中退出。它也被称为入口控制循环,因为要测试的条件出现在循环体的开头。所以基本上,当程序中的迭代次数不固定时,会使用while循环。
句法:
while conditional [do]
# code to be executed
end
注意: while 循环的条件与代码由保留字do 、换行符、反斜杠 (\)或分号 (;) 分隔。
流程图:
例子:
Ruby
# Ruby program to illustrate 'while' loop
# variable x
x = 4
# using while loop
# here conditional is x i.e. 4
while x >= 1
# statements to be executed
puts "GeeksforGeeks"
x = x - 1
# while loop ends here
end
Ruby
# Ruby program to illustrate 'for'
# loop using range as expression
i = "Sudo Placements"
# using for loop with the range
for a in 1..5 do
puts i
end
Ruby
# Ruby program to illustrate 'for'
# loop using array as expression
# array
arr = ["GFG", "G4G", "Geeks", "Sudo"]
# using for loop
for i in arr do
puts i
end
Ruby
# Ruby program to illustrate 'do..while'loop
# starting of do..while loop
loop do
puts "GeeksforGeeks"
val = '7'
# using boolean expressions
if val == '7'
break
end
# ending of ruby do..while loop
end
Ruby
# Ruby program to illustrate 'until' loop
var = 7
# using until loop
# here do is optional
until var == 11 do
# code to be executed
puts var * 10
var = var + 1
# here loop ends
end
输出:
GeeksforGeeks
GeeksforGeeks
GeeksforGeeks
GeeksforGeeks
循环
“ for ” 循环具有与 while 循环类似的功能,但语法不同。当预先知道要执行循环语句的次数时,最好使用for循环。它迭代特定范围的数字。它也被称为入口控制循环,因为要测试的条件出现在循环体的开头。
句法:
for variable_name[, variable...] in expression [do]
# code to be executed
end
for:一个特殊的 Ruby 关键字,表示循环的开始。
variable_name:这是一个变量名,用作对循环当前迭代的引用。
in:这是一个特殊的 Ruby 关键字,主要用于 for 循环。
表达式:它为表达式中的每个元素执行一次代码。这里的表达式可以是范围或数组变量。
do:这表示要重复执行的代码块的开始。做是可选的。
end:这个关键字代表从' do '关键字开始的' for '循环块的结束。
示例 1:
红宝石
# Ruby program to illustrate 'for'
# loop using range as expression
i = "Sudo Placements"
# using for loop with the range
for a in 1..5 do
puts i
end
输出:
Sudo Placements
Sudo Placements
Sudo Placements
Sudo Placements
Sudo Placements
输出:
1
2
3
4
5
说明:在这里,我们定义了范围 1..5。范围运算符创建一系列连续值,包括开始、结束和介于两者之间的值范围。 ( .. ) 创建一个包含最后一项的范围。 1..5 中的 a语句将允许a取 1 到 5 范围内的值(包括 5)。
示例 2:
红宝石
# Ruby program to illustrate 'for'
# loop using array as expression
# array
arr = ["GFG", "G4G", "Geeks", "Sudo"]
# using for loop
for i in arr do
puts i
end
输出:
GFG
G4G
Geeks
Sudo
做..while循环
do while循环类似于while 循环,唯一的区别是它在执行完语句后检查条件,即它肯定会执行一次循环体。这是一个退出控制循环,因为它测试出现在循环体末尾的条件。
句法:
loop do
# code to be executed
break if Boolean_Expression
end
在这里,Boolean_Expression 将导致使用运算符(>、=、<=、!=、==)创建的真或假输出。您还可以在括号中使用多个布尔表达式 (Boolean_Expressions),它们将通过逻辑运算符(&&、||、!) 连接。
例子:
红宝石
# Ruby program to illustrate 'do..while'loop
# starting of do..while loop
loop do
puts "GeeksforGeeks"
val = '7'
# using boolean expressions
if val == '7'
break
end
# ending of ruby do..while loop
end
输出:
GeeksforGeeks
直到循环
Ruby直到循环将执行语句或代码,直到给定条件评估为真。基本上,它与执行直到给定条件评估为假的 while 循环正好相反。 until语句的条件与代码由保留字do 、换行符或分号分隔。
句法:
until conditional [do]
# code to be executed
end
例子:
红宝石
# Ruby program to illustrate 'until' loop
var = 7
# using until loop
# here do is optional
until var == 11 do
# code to be executed
puts var * 10
var = var + 1
# here loop ends
end
输出:
70
80
90
100