Menu
Coddy logo textTech

요약 - 커스텀 이터레이터

Coddy Ruby 여정의 로직 및 흐름 섹션에 포함된 레슨 — 56개 중 20번째.

이 장의 모든 내용을 결합하여, yield를 사용하고 블록을 인자로 받으며 유용한 값을 반환하는 자신만의 반복자(iterator) 메서드를 만들어 보세요.

challenge icon

챌린지

중급

배열 numbers를 인자로 받아 배열의 각 짝수를 블록으로 전달하는(홀수는 완전히 건너뜀) each_even이라는 이름의 메서드를 정의하세요.

그런 다음 쉼표로 구분된 정수 목록을 읽고, 전달된 모든 값에 대해 "Even: <n>"을 출력하는 블록과 함께 each_even을 호출한 후, 마지막으로 다음을 출력하세요:

Done: <count>

여기서 count는 전달된 짝수의 개수입니다.

입력 1,2,3,4,5,6에 대한 출력은 다음과 같습니다:

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

직접 해보기

# TODO: 모든 짝수를 yield하는 each_even(numbers)를 정의하세요

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

# TODO: "Even: <n>"을 출력하는 블록과 함께 each_even을 호출하세요
# 그리고 yield된 각 값에 대해 count를 증가시키세요

puts "Done: #{count}"

로직 및 흐름의 모든 레슨