Menu
Coddy logo textTech

Resumen - Iterador personalizado

Parte de la sección Lógica y flujo del Journey de Ruby de Coddy — lección 20 de 56.

Construye tu propio método iterador que use yield, acepte un bloque y devuelva un valor útil, combinando todo lo de este capítulo.

challenge icon

Desafío

Intermedio

Define un método llamado each_even que reciba un array numbers y ceda (yield) cada número par del array a su bloque (omitiendo los números impares por completo).

Luego, lee una lista de enteros separados por comas, llama a each_even pasando dicha lista con un bloque que imprima "Even: <n>" por cada valor cedido, y finalmente imprime:

Done: <count>

Donde count es la cantidad de números pares que fueron cedidos.

Para la entrada 1,2,3,4,5,6, la salida es:

Even: 2
Even: 4
Even: 6
Done: 3

Pruébalo tú mismo

# TODO: define each_even(numbers) que produzca cada número par

numbers = gets.chomp.split(",").map(&:to_i)
count = 0

# TODO: llama a each_even con un bloque que imprima "Even: <n>"
# e incremente count por cada valor producido

puts "Done: #{count}"

Todas las lecciones de Lógica y flujo