プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

フィボナッチ数列を生成する


フィボナッチ数列は次のようになります

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,……

このシーケンスでは、n番目の項は(n-1)番目と(n-2)番目の項の合計です。

生成するには再帰的アプローチを使用できますが、動的計画法では手順が簡単です。すべてのフィボナッチ数をテーブルに格納できます。そのテーブルを使用することで、このシーケンスの次の項を簡単に生成できます。

入力と出力

Input:
Take the term number as an input. Say it is 10
Output:
Enter number of terms: 10
10th fibinacci Terms: 55

アルゴリズム

genFiboSeries(n)

入力: 用語の最大数。

出力- n番目のフィボナッチ用語。

Begin
   define array named fibo of size n+2
   fibo[0] := 0
   fibo[1] := 1

   for i := 2 to n, do
      fibo[i] := fibo[i-1] + fibo[i-2]
   done
   return fibo[n]
End

#include<iostream>
using namespace std;

int genFibonacci(int n) {
   int fibo[n+2];          //array to store fibonacci values

   // 0th and 1st number of the series are 0 and 1
   fibo[0] = 0;
   fibo[1] = 1;

   for (int i = 2; i <= n; i++) {
      fibo[i] = fibo[i-1] + fibo[i-2];    //generate ith term using previous two terms
   }
   return fibo[n];
}

int main () {
   int n;
   cout << "Enter number of terms: "; cin >>n;
   cout << n<<" th Fibonacci Terms: "<<genFibonacci(n)<<endl;
}

出力

Enter number of terms: 10
10th Fibonacci Terms: 55

  1. Java 9のJShellでフィボナッチ数列を実装するにはどうすればよいですか?

    JShell は、Java 9で導入されたJavaシェルツールであり、Javaコードを実行し、結果をすぐに出力できるようにします。これはREPL(Read-Evaluate-Print-Loop)です。 コマンドラインから実行されるツール 促す。 番号はフィボナッチ数列と言われています 後続の各数値が前の2つの数値の合計である場合 。 以下の例では、フィボナッチSを実装できます。 エリー JShellツールで。 C:\Users\User\>jshell | Welcome to JShell -- Version 9.0.4 | For an introduction type:

  2. Pythonでラムダを使用してnまでのフィボナッチ数列を検索する

    フィビナッチ級数は、多くの自然現象を説明する、ウィドリーとして知られている数学的級数です。 0と1で始まり、前の用語に用語を追加して次の用語を取得します。この記事では、Pythonでラムダ関数を使用してフィボナッチ数列の特定の数の要素を生成する方法を説明します。 合計とマップ付き map関数を使用して、リストの各要素にラムダ関数を適用します。リストスライスメカニズムを設計して、前の2つの用語の合計を取得し、範囲を使用して、生成する用語の数をカウントします。 例 def fibonacci(count):    listA = [0, 1]    an