8 formas de iterar en Ruby

Leyendo cosas, me dije “Vamos a hacer un pequeno script”, este debe sumar los numeros del 1 al 100. Al final de mi cuenta de que lo hice de 8 formas distintas… esto si es versatilidad. Supongo que pueden existir mas formas de hacerlo, ¿o no?.

Ahi les dejo el codigo:

#Escriba un programa que sume los números del 1 al 100
# Forma 1
s = 0
for i in 1..100
 s += i
end


puts 'Resultado: '+ s.to_s

# Forma 2

s = 0
1.upto(100) do |i|
 s += i
end

puts 'Resultado: '+ s.to_s

# Forma 3

s = 0
100.downto(1) do |i|
 s += i
end

puts 'Resultado: '+ s.to_s

# Forma 4

s = 0
101.times do |i| # La primera vez el ciclo va en 0 y este no suma
 s += i
end

puts 'Resultado: '+ s.to_s

# Forma 5

s = 0
1.step(100, 1) do |i|
 s += i
end

puts 'Resultado: '+ s.to_s

# Forma 6

s = 0
i = 1
while i <= 100 do
 s += i
 i += 1
end

puts 'Resultado: '+ s.to_s

# Forma 7

s = 0
i = 1
until i > 100 do
 s += i
 i += 1
end

puts 'Resultado: '+ s.to_s

# Forma 8

s = 0
i = 1
loop do
 break if i > 100
 s += i
 i += 1
end

puts 'Resultado: '+ s.to_s

Artículos relacionados