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

C++での代替フィボナッチ数


フィボナッチ数 は、2つの固定数、通常は o、1で始まる数列として定義されます。 または1、1 シーケンスの連続する要素は、シーケンスの前の2つの番号の合計です。

たとえば、8要素までのフィボナッチ数列は0、1、1、2、3、5、8、13、21、34、55、89です。

それでは、このシリーズを一般化してみましょう。ここで、n番目の項の値は(n-1)番目と(n-2)番目の項の合計に等しくなります。それでは、フィボナッチ数列のn番目の項の式の数学的導出を取得しましょう。

T n =T n-1 + T n-2

この式を使用してフィボナッチ数列の第5項を見つけると、第3項と第4項が与えられます。

T 5 =T 4 + T 4

T 5 =3 +5=8。

代替フィボナッチ数列 はフィボナッチ数列と同じ値のフィボナッチ数列ですが、代替要素がシリーズに印刷されます。たとえば、代替フィボナッチ数列の最初の4つの要素は0、1、3、8です。

代替フィボナッチ数列を印刷するプログラムを作成するには、式とシリーズのすべての要素を使用してから、シリーズの代替値のみを印刷します。

アルゴリズム

Step 1 : Initialize the first two values of the series n1 = 0 and n2 = 1.
Step 2 : loop from i = 2 to n and follow 3-5 :
Step 3 : next element is n3 = n1 +n2
Step 4 : n1 = n2 and n2 = n3
Step 5 : if i%2 == 0 : print n3

#include <iostream>
using namespace std;
int main(){
   int n1=0,n2=1,n3,i,number;
   cout<<"Enter the number of elements to be present in the series: ";
   cin>>number;
   cout<<"Alternate Fibonacci Series is : ";
   cout<<n1<<" ";
   for (i=2;i<(number*2);++i){
      n3=n1+n2;
      n1=n2;
      n2=n3;
      if(i%2==0)
         cout<<n3<<" ";
   }
   return 0;
}

出力

Enter the number of elements to be present in the series: 4
Alternate Fibonacci Series is : 0 1 3 8

  1. C++でのエマープ番号

    エマープ numberは特殊なタイプの数であり、その数字を逆にすると別の素数が作成されます(この素数は元の素数とは異なります)。 エマープは素数の逆です。 エマープではないいくつかの素数は、回文素数と1桁の素数です。 いくつかのエマープ番号 13、17、37、733です。 n未満のすべてのエマープ数を出力するプログラム。 ここでは、番号nが与えられており、すべてのemirp番号を出力する必要があります。 n以下。 問題を理解するために例を見てみましょう 入力: n =40 出力: 13、17、31、37 ソリューションアプローチ 指定された数よりも小さいすべてのエマー

  2. C++でのデュードニー番号

    与えられた数の底の数理論で定義された数は、最初の自然数の桁の合計が2番目の数の桁の合計に等しくなるように、別の自然数の完全な3乗に等しい自然数です。 (ウィキペディア)。 番号はヘンリー・デュードニーによって発見されました 。その数式 は- ここでは、整数nが与えられます。私たちの仕事は、与えられた番号nが人物番号であるかどうかを確認することです。 問題を理解するために例を見てみましょう 入力: N =17592 出力: いいえ 説明: 与えられた番号はダドニー番号ではありません。 ソリューションアプローチ- 解決策は、デュードニー番号の基本的な定義にあります。