FizzBuzz,一個經典的問題,返回所有數字高達N輕微扭曲。如果一個數字可以被3整除,它將被替換爲「fizz」。如果它可以被5整除,它將被替換爲「嗡嗡聲」。Ruby FizzBuzz使用數組,我的邏輯似乎是正確的,但它得到一個錯誤
comparison of Fixnum with nil failed
有人能解釋這個錯誤信息給我聽聽:如果是整除雙方,它與「fizzbuzz」
我不斷收到此錯誤信息取代?此外,爲什麼代碼無法正常工作?
def fizz_buzz(n)
arr = (1..n).to_a
i = 0
while arr[i] < arr[n]
if i % 3 == 0 && i % 5 == 0
arr[i] = 'fizzbuzz'
elsif i % 3 == 0
arr[i] = 'fizz'
elsif i % 5 == 0
arr[i] = 'buzz'
else
arr[i] = i
i += 1
end
end
return arr
end
fizz_buzz(12)
哦!非常感謝你! :D – GothamQueen