Ruby のフィボナッチ数列
Hassan Ejaz
2024年2月15日
Rubyのフィボナッチ数列を例を挙げて紹介します。
Ruby のフィボナッチ数列
フィボナッチ数列の範囲を取得する必要がある場合や、フィボナッチ数列を特定の数まで取得したい場合があります。 Ruby を使用して、任意の数の項のフィボナッチ数列を取得できます。
フィボナッチ数列は、現在の数が前の 2つの数の合計である数列です。 たとえば、10
項までのフィボナッチ数列は、1, 1, 2, 3, 5, 8, 13, 21, 34, 55
です。
最後の数字 55
は 21
と 34
の合計であり、一連の他の数字も同様にそれらの前の 2つの数字の合計であることに注意してください。
フィボナッチ数列の最初の 2つの数を定義し、残りの数を 5 回取得しようとする例で、フィボナッチ数列について説明しましょう。
firstNum = 0
secondNum = 2
ループを使用して、次の 5つの数値のフィボナッチ数列を取得します。
firstNum = 0
secondNum = 2
5.times do
firstNum, secondNum = secondNum, firstNum + secondNum
puts firstNum
end
出力:
上記の例は、ループを使用して可能な限り長くフィボナッチ数列を取得できることを示しています。
それでは、特定の数までのフィボナッチ数列を返す関数を Ruby で作成しましょう。 まず、関数を定義します。
関数内で、フィボナッチ数列の最初の 2つのステップを定義します。
次に、ループを使用して、ユーザーが渡す数値のフィボナッチ数列を取得します。 以下に示すように、渡された回数よりも 1 回少ない回数でループを実行します。
def getFib(x)
firstNum, secondNum = [0, 1]
(x - 1).times do
firstNum, secondNum = secondNum, firstNum + secondNum
puts firstNum
end
end
getFib(19)
出力:
上記の例からわかるように、関数を作成し、その関数内でフィボナッチ数列を定義することで、任意の数のフィボナッチ数列を簡単に取得できます。