C/C++ Program for Fibonacci Series Using Recursion

Series 0, 1, 1, 2, 3, 5, 8, 13, 21 . . . . . . . is a Fibonacci series. In Fibonacci series, each term is the sum of the two preceding terms.

 

The C and C++ program for Fibonacci series using recursion is given below.
 

C Program

C++ Program

 

Output:

C/C++ Program for Fibonacci Series Using Recursion

17 thoughts on “C/C++ Program for Fibonacci Series Using Recursion

  1. Anja

    i guess 0 should not have been a part of the series….
    so in the function u should have used return fibbonacci(n)+fibbonacci(n-1)
    please correct me if i am wrong

    Reply
    1. kc

      For not getting 0 in the output,
      i can be initialized as 1 instead of 0 : int i=1;

      Reply
      1. francis

        Write a recursive program for implementing a Fibonacci of any
        number

        Reply
  2. Anthonick

    The while statement needs to be, while(i <= n)(line 24), and (int i = 0) needs to be initialized at 1(line 19), not at 0. Changing this will result in the proper value for any fibonacci(n). As is right now, it is giving you the value at fibonacci(n-1), hence the reason fibonacci(8) yields a value of 13.

    Reply
  3. Doe

    Can someone help me with this, write a recursive program to implement the Fibonacci series from 0 to 21.

    Reply
    1. Sam

      #include

      using namespace std;

      int Fib(int n);

      int main() {
      int i;

      for(i=1;i<=20;i++) {
      cout << "Fib(" << i << ") = " << Fib(i) << endl;
      }

      return 0;
      }

      int Fib(int n) {
      int returnValue;

      // handle the base case first;
      if (n == 1 or n == 2) {
      returnValue = 1;
      } else {
      returnValue = Fib(n-1) + Fib(n-2);
      }
      return returnValue;
      }

      Reply
      1. Abel

        Can you help me with this, write
        a recursive program to implement the
        Fibonacci series a given number?

        Reply
        1. andualem

          #include

          using namespace std;

          int Fib(int n);

          int main() {
          int i;

          for(i=1;i<=20;i++) {
          cout << "Fib(" << i << ") = " << Fib(i) << endl;
          }

          return 0;
          }

          int Fib(int n) {
          int returnValue;

          // handle the base case first;
          if (n == 1 or n == 2) {
          returnValue = 1;
          } else {
          returnValue = Fib(n-1) + Fib(n-2);
          }
          return returnValue;
          }

          Reply
  4. negashbezu

    i relly appreciet you!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Reply
  5. vasudevareddy

    i need to get the output as, if i enter 15 as input then i should get the answer as 0,1,1,2,3,5,8,13.so, where should i have to change the code?

    Reply
  6. mania

    hi. if we want just the last number of this, what should we do ?
    we give : 3
    we get : 2

    Reply
    1. P.L

      Give me please more and more information about fibonacci. I want to learn C++ very well

      Reply
  7. ShashiK

    Not actual Recursion. Its while loop which does the required part and not the method. Good to move the logic inside the method

    void Recursion::FibonaciiSeries(int num)
    {
    static int print = 1;
    static int next = 2;

    if (num == 0)
    {
    return;
    }
    else
    {
    cout << print << " ";
    int temp = print;
    print = next;
    next = print + temp;
    FibonaciiSeries(num – 1);
    }
    }

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *