2016-07-24 3 views
0

この質問を正しく完了する方法がわかりません。関数を書くための無限ループfirst_n_evens(n)最初のN個の多くの偶数の配列を返します

は私が私が間違っているのかを理解助けてください0

から始まり、最初のN多くの偶数の配列を返す関数first_n_evens(n)を書きます。

多くのおかげ

def first_n_evens(n) 
    array = [] 
    number = 0 

    while array.count <= n 
    if number % 2 == 0 
     array.push(number) 
     number += 1 
    end 
    end 

return array 

end 

test = first_n_evens(5) 
puts test 
+0

'(0 ...(2 * n))。ステップ(2).to_a'を試してください。 –

答えて

1

このライン:

number += 1 

があなたのifブロックの内側にあります。 numberが偶数の場合は、numberがインクリメントされます。 numberが奇数の場合、ifの条件が満たされず、何も起こりません。

ブロックをif .. endブロックの外側に移動しても問題ありません。

関連する問題