나는 정수 배열을 입력으로 사용하여 제품을 반환하는 메서드를 작성하려고합니다. 예를 들어 :배열 # 요소를 사용하여 배열 요소를 곱하는 방법은?
product([1,2,3]) # returns 6
나는 Array#each
아닌 분사 방법을 사용하여이 작업을 수행해야합니다. 이것은 내가 가지고 올 것을이지만, 잘못된 것 같다 : 또한
def product(array)
final = 0.0
array.each do |i|
final *= i
end
return final
end
, 나는 배열의 모든 홀수 정수의 제품을 반환하기 위해이 방법을 수정할 수있는 방법 등이
product([1,2,3]) # returns 3, because 2 is even
product([0,-1,-10]) # returns -1, because 0 and -10 are even
라몬 말했듯이
난 당신이 그냥 다시 1 – Ramon
에'final'를 초기화하는 것을 의미 생각 코드, reduce/inject를 사용하는 한 줄짜리 :'array.reduce (& : *)' – Ramon
각각을 사용해야하는 이유는 무엇입니까? –