Fibonacci series using Recursion

As a simple rule of recursion, any function can be computed using a recursive routine if :
1. The function can be expressed in its own form.
2. There exists a termination step, the point at which f(x) is known for a particular ‘x’.

Therefore to write a recursive program to find the nth term of the fibonacci series, we have to express the fibonacci sequence in a recursive form using the above 2 rules :
1. fib(n) = fib(n-1) + fib(n-2) (recursive defination of fibonacci series).
2. if n=0 or n=1, return n (termination step).
Using these 2 rules, the recursive program for finding the nth term of the fibonacci series can be coded very easily as shown.

The exe file can be downloaded from here : FIBONACCI

#include "stdio.h"
#include "conio.h"
int y;
fib(int n)
	{ if(n==1 || n==0)
	   return n;
	  y=fib(n-1)+fib(n-2);
	   return y;
	}
main()
	{ int a,r;
	  clrscr();
	  printf("Enter any number : ");
	  scanf("%d",&a);
	  r=fib(a);
	  printf("The no. at position %d is %d",a,r);
	  getch();
	  return 0;
	}


Related Posts

Share

Filed Under: CCodes

Tags:

About the Author: Software Engineer - Search & Recommendation at Rovi

RSSComments (6)

Leave a Reply | Trackback URL

  1. Awesome work. I always find very unique posts here on your Blog.

  2. sarath says:

    nice work,
    but a small variation is advisable….
    ie,
    return n+1 if the value of n is 0 or 1. This is because fibonacci series is generally regarded to begin with 0.
    the fibonacci series is
    0 1 1 2 3 5 8 13………….
    so according to your logic, if you give 3 as input, the result displayed will be 2 which is wrong.

  3. Zero CooL says:

    #include
    #include
    int Fib(int x, int range);

    int main(){
    int r;
    printf(“Enter the MAx range for Fibonacci Series “);
    scanf(“%d”, &r);
    Fib(r,r);
    printf(“\n”);
    }
    Fib(int x, int range )
    {
    static int sum=0,pre=0,p=1;
    if (sum>=range)
    return 0;
    else
    {
    if (pre==0 && p==1 && sum==0)
    {sum=pre+p;
    printf(“%d %d %d”, pre,p,sum);
    }
    else
    { pre=p;
    p=sum;
    sum=pre+p;
    printf(” %d “, sum);
    }
    }
    Fib(sum,range);
    }

  4. giliweed says:

    thanks alot!! it came handy.

  5. Tintu C Raju says:

    /*Simple c program for Fibnocci series with Recurion
    By Tintu.C.Raju
    */

    #include
    #include
    void fib(int n,int f1=0,int f2=1)
    {
    if(n)
    {
    printf(“%d “,f1);
    fib(n-1,f2,f1+f2);
    }
    else return;
    }

    void main()
    {
    int n;
    printf(“\n\tEnter the number\n”);
    scanf(“%d”,&n);
    printf(“\n\tThe Fibonacci series using recursion is\n\t”);
    fib(n);
    getch();
    }

  6. Aishwarya Pradhan says:

    guys this is also some easy program made by me for the same Fibonacci series just try i.e. run it once

    #include
    int fibo(int n)
    {
    if(n==1||n==0)
    return n;
    else
    return(fibo(n-1)+fibo(n-2));
    }
    int main()
    {
    int n,i;
    puts(“enter any number”);
    scanf(“%d”,&n);
    for(i=0;i<n;i++)
    {
    printf("%d\t",fibo(i));
    }
    }

Leave a Reply

*

AWSOM Powered