A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/ruby/ruby-loops-for-while-do-while-until/ below:

Ruby | Loops (for, while, do..while, until)

Ruby | Loops (for, while, do..while, until)

Last Updated : 11 Jul, 2025

Looping is a fundamental concept in programming that allows for the repeated execution of a block of code based on a condition. Ruby, being a flexible and dynamic language, provides various types of loops that can be used to handle condition-based iterations. These loops simplify tasks that require repetitive actions in a program.

The main types of loops in Ruby are:

1. while Loop

The condition that is to be tested, is given at the beginning of the loop and all statements are executed until the given boolean condition satisfies. When the condition becomes false, the control will be out of the while loop. It is also known as an Entry Controlled Loop because the condition to be tested is present at the beginning of the loop body. So basically, while loop is used when the number of iterations is not fixed in a program. 

Syntax:
while conditional [do]
# code to be executed
end

Note: A while loop's conditional is separated from code by the reserved word do, a newline, backslash(\), or a semicolon(;).

Flowchart:
 
Example: 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

Output:

GeeksforGeeks
GeeksforGeeks
GeeksforGeeks
GeeksforGeeks 
2. for Loop

"for" loop has similar functionality as while loop but with different syntax. for loop is preferred when the number of times loop statements are to be executed is known beforehand. It iterates over a specific range of numbers. It is also known as Entry Controlled Loop because the condition to be tested is present at the beginning of the loop body.

Syntax:
for variable_name[, variable...] in expression [do]

# code to be executed

end

Components: Example 1: Iterating over a range
  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

Output: 

Sudo Placements
Sudo Placements
Sudo Placements
Sudo Placements
Sudo Placements

Output: 

1
2
3
4
5

Explanation: Here, we have defined the range 1..5. Range Operators create a range of successive values consisting of a start, end, and range of values in between. The (..) creates a range including the last term. The statement for a in 1..5 will allow a to take values in the range from 1 to 5 (including 5).

Example 2: Iterating over an array 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

Output: 

GFG
G4G
Geeks
Sudo
3. do..while Loop

do while loop is similar to while loop with the only difference that it checks the condition after executing the statements, i.e it will execute the loop body one time for sure. It is a Exit-Controlled loop because it tests the condition which presents at the end of the loop body. 

Syntax:
loop do

# code to be executed

break if Boolean_Expression

end

Here, Boolean_Expression will result in either a true or false output which is created using comparing operators (>, =, <=, !=, ==). You can also use multiple boolean expressions within the parentheses (Boolean_Expressions) which will be connected through logical operators (&&, ||, !).

Example:

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

Output: 
 

GeeksforGeeks
4. until Loop

Ruby until loop will executes the statements or code till the given condition evaluates to true. Basically it's just opposite to the while loop which executes until the given condition evaluates to false. An until statement's conditional is separated from code by the reserved word do, a newline, or a semicolon.

Syntax: 
until conditional [do]

# code to be executed

end

Example:

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

Output:

70
80
90
100
Summary of Loop Types: Loop Type Control Type Condition Evaluated Use Case while Entry-controlled Before loop starts When the number of iterations is unknown. for Entry-controlled Before loop starts When the number of iterations is known (iterating over a range or collection). do..while Exit-controlled After loop execution When you need the loop to execute at least once. until Entry-controlled Before loop starts When you want to loop until a condition is true Conclusion

Ruby offers a variety of looping constructs to handle repetitive tasks in different scenarios. The while and for loops are entry-controlled, meaning the condition is evaluated before executing the loop body. On the other hand, the do..while loop is exit-controlled, ensuring the loop body is executed at least once. The until loop provides an alternative way to execute a loop until a condition is met



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4