Estruturas de Repetição

A forma mais simples de iterar em Ruby, é usar o método times:

5.times do
  print "Olá!"
end

Outras formas são usar as estruturas de repetição for, while e until.

for numero in (1..10)
  puts numero
end

A variável numero é uma variável local da estrutura de repetição for e é incrementada de 1 a 10 antes de ser impresso o seu valor. Note que (1..10) cria um range de 1 a 10.

Usando a estrutura while para o mesmo código:

numero = 1
while numero <= 10
  puts numero
  numero += 1
end

Observe que é necessário inicializar a variável numero, caso não inicializássemos, o interpretador acusaria um erro de variável ou método indefinido:

undefined local variable or method `numero' for main:Object (NameError)

A estrutura while realizará as instruções dentro dela até que a condição imposta seja falsa. No exemplo, temos que incrementar o seu valor e o while para quando numero é maior que 10.

Por fim, a estrutura until serve como complemento para o while:

numero = 1
until numero > 10
  puts numero
  numero += 1
end