Curso de Ruby - Estruturas de Repetição (loops)
while
(Enquanto a condição for verdadeira)
O loop while
executa um bloco de código enquanto a condição for verdadeira.
contador = 1
while contador <= 5
puts "Número: #{contador}"
contador += 1
end
Saída:
Número: 1
Número: 2
Número: 3
Número: 4
Número: 5
until
(Enquanto a condição for falsa)
O until
é o oposto do while
: ele executa enquanto a condição for falsa.
contador = 1
until contador > 5
puts "Número: #{contador}"
contador += 1
end
Saída: (igual ao while
)
Número: 1
Número: 2
Número: 3
Número: 4
Número: 5
for
(Loop com Intervalo Específico)
O for
é útil para percorrer um intervalo de valores ou arrays.
for i in 1..5
puts "Número: #{i}"
end
Saída:
Número: 1
Número: 2
Número: 3
Número: 4
Número: 5
.times
(Executa um bloco várias vezes)
O método .times
repete um bloco um número fixo de vezes.
5.times do |i|
puts "Executando pela #{i + 1}ª vez"
end
Saída:
Executando pela 1ª vez
Executando pela 2ª vez
Executando pela 3ª vez
Executando pela 4ª vez
Executando pela 5ª vez
loop do
(Loop Infinito)
O loop do
cria um loop infinito (só para quando usamos break
).
contador = 1
loop do
puts "Número: #{contador}"
contador += 1
break if contador > 5
end
Saída:
Número: 1
Número: 2
Número: 3
Número: 4
Número: 5
each
(Percorrer Arrays e Hashes)
O .each
é muito usado para percorrer arrays e hashes.
Percorrendo um Array
numeros = [1, 2, 3, 4, 5]
numeros.each do |num|
puts "Número: #{num}"
end
Percorrendo um Hash
pessoa = { nome: "Rafael", idade: 30 }
pessoa.each do |chave, valor|
puts "#{chave}: #{valor}"
end
Saída:
nome: Rafael
idade: 30
Controlando Loops (break
e next
)
break
(Interrompe o Loop)
10.times do |i|
break if i == 5
puts i
end
Saída:
0
1
2
3
4
next
(Pula para a Próxima Iteração)
10.times do |i|
next if i.even? # Pula números pares
puts i
end
Saída:
1
3
5
7
9
Exercícios
Agora é sua vez! 💪
1️⃣ Escreva um programa que imprima os números de 1 a 10 usando while
.
2️⃣ Crie um loop que peça um número ao usuário até que ele digite 0. Depois digitar 0 o loop deve terminar.
3️⃣ Crie um array de números inteiros, percorra-o com .each
e exiba apenas os números pares.
Se quiser, tente resolver e envie nos comentários seus códigos e suas respostas para analisarmos juntos! 🚀
Próxima aula em construção!!! - Métodos (Funções)