Skip to main content

Recursion In C Program

Recursion In C Program

In this tutorial, We will learn about recursion in C programming language.

Introduction

The process in which a function calls itself directly or indirectly is called recursion and the corresponding function is called as a recursive function.

  • Base Condition: In Recursion: in a recursive program base case provide the solution to the smallest problem
  • Expression: In a recursive program we write an expression for the bigger problem in term of smaller problems
Example: Calculate the Factorial of n.
Factorial(n) = (n) x (n-1) x ... x 1
  • Base Condition: the factorial of smallest number i.e 1 is 1 hence base condition is if n equal to 1 factorial will be 1
  • Expression:  Suppose we want to calculate factorial of n and we already know the factorial of n-1 we can calculate factorial of n by multiplying n to the factorial of n -1. for  example if we want to calculate factorial of 5 and we already know factorial of 4 we can calculate factorial of 5 by multiplying 5 into factorial of 4 i.e factorial(5) =  5 x factorial(4) = 5 x 24 = 120 hence here expression will be factorial(n) = n x factorial(n-1)
 #include<stdio.h>  
 int factorial(int n) {  
      // base condition  
      if (n==1) {   
           return 1;        
      }   
      // expression  
      return n*factorial(n-1);  
 }  
 int main() {  
      int n;  
      printf("Enter an integer: ");  
      scanf("%d", &n);  
      printf("Factorial of %d is %d\n", n, factorial(n));  
      return 0;  
 }  

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Comments

Popular posts from this blog

Clique in Graph

Clique in Graph In this tutorial, we will learn about the clique in the graph theory. Clique In graph theory, a clique is a subset of vertices of an undirected graph such that every two distinct vertices in the clique are adjacent. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Equations

In general we frame real life problems into some mathematical formula called equations in which we use constant and some variables(unknown) Example: Ram is 12 years old.Ram 's age is 3/5 of Shyam's age what is Shyam's age. Let Shyam's age is x then 3/5 of sham's age is 3*x/5 x*3/5=12 x=60/3=20 so Shyam's age is 20. Linear equations When there is a linear combination of unknown variables is there then eqn is linear Example: 3x+ 2y+ 4z=9 Non Linear Equations: Equations in which non linear combination of the variable is there then eqn is non linear. When any 2 unknown variable multiplication present in the equation then it is the nonlinear equation. Example: 2x+5yz=98 is a nonlinear equation because yz multiplication is there: Quadratic equation in one variable: x^2 + 4*x + 2=0 is non linear because unknown variable x is being multiplied in term x^2 Quadratic equation in many variable: x^2 + y^2 +z^2 + w=0 cubic equati...

Practice Problem on Square Measurement

Practice Problem on Square Measurement What is the area of square having side length 5 unit? 25 unit 2     10 unit 25 unit 10 unit 2 What is the  perimeter of a square   having side length 5 unit? 20 unit 20 unit 2 10 unit 10 unit 2 What is the  diagonal  length of a square   having side length 5 unit? 5√2 unit     5√2 unit 2 10 unit 10 unit 2 What is the side length of square having area equal to  25 unit 2  ? 5 unit 5  unit 2 10 unit 10  unit 2 There is a petrol pump in a area having length and width equal to 500 meter. What will be cost to put bricks in the whole area if bricks having length and width equal to 5 cm and cost of 1 bricks is Rs 5? Rs 500000000 Rs 50000000 Rs 5000000 Rs 500000 Related Post:  Square Mensuration Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above. ...

Vertex Cover

Vertex Cover In this tutorial, We will learn about the vertex cover in graph theory. Vertex Cover  A vertex cover of an undirected graph is a subset of its vertices such that for every edge (u, v) of the graph, either u or v is in vertex cover i.e minimum number of vertices that covers all edges of the given graph. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.