StudyLover
  • Home
  • Study Zone
  • Profiles
  • Typing Tutor
  • Contact us
  • Sign in
StudyLover Program #33 (U3): Recursion — Factorial and Fibonacci
Download
  1. C Programming
  2. C Programming Practice
Program #32 (U3): Iterate Array via Pointer Arithmetic (find max & index) : Program #34 (U3): Recursion — Sum from 1 to N
C Programming Practice

Task: Implement recursive versions and compare to iterative implementations. Emphasize base cases and termination (keep n small for recursive Fibonacci).

 
#include <stdio.h>

 
long long fact_rec(int n){ return (n<=1)?1:n*fact_rec(n-1); }

long long fact_itr(int n){ long long f=1; for(int i=2;i<=n;++i) f*=i; return f; }

 
long long fib_rec(int n){ return (n<=1)?n:fib_rec(n-1)+fib_rec(n-2); }

long long fib_itr(int n){ long long a=0,b=1,t; for(int i=0;i<n;++i){ t=a+b; a=b; b=t; } return a; }

 
int main(void){

    int n;

    printf("Enter n (<=20 for demo): ");

    if(scanf("%d", &n)!=1 || n<0){ printf("Invalid n.\n"); return 0; }

 
    printf("fact_rec(%d) = %lld\n", n, fact_rec(n));

    printf("fact_itr(%d) = %lld\n", n, fact_itr(n));

    printf("fib_rec(%d)  = %lld (slow for large n)\n", n, fib_rec(n));

    printf("fib_itr(%d)  = %lld\n", n, fib_itr(n));

    return 0;

}

 

 

Program #32 (U3): Iterate Array via Pointer Arithmetic (find max & index) Program #34 (U3): Recursion — Sum from 1 to N
Our Products & Services
  • Home
Connect with us
  • Contact us
  • +91 82955 87844
  • Rk6yadav@gmail.com

StudyLover - About us

The Best knowledge for Best people.

Copyright © StudyLover
Powered by Odoo - Create a free website