Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 대체 피보나치 수

<시간/>

피보나치 수 두 개의 고정 숫자로 시작하는 일련의 숫자로 정의되며 일반적으로 o,1 또는 1, 1 시퀀스의 연속 요소는 시퀀스의 이전 두 숫자의 합입니다.

예를 들어, 8개의 요소까지 피보나치 수열은 0,1,1,2,3,5,8,13,21,34,55,89입니다.

이제 이 시리즈를 일반화해 보겠습니다. 여기서, n번째 항의 값은 (n-1)번째 항과 (n-2)번째 항의 합과 같다. 이제 피보나치 수열의 n번째 항에 대한 공식의 수학적 유도를 구해 봅시다.

Tn =Tn-1 + Tn-2

이 공식을 사용하여 피보나치 수열의 5번째 항을 구하면 3번째와 4번째 항이 주어집니다.

T5 =T4 + T4

T5 =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