Solved programming problem

How to Find GCD with Recursion in C.

Source code

#include<stdio.h>

 

int gcd_find(int n,int m,int temp,int i)

{

    if(i==n || i==m) ///base case

    {

        return temp;

    }

    if(n%i==0 && m%i==0)

    {

        temp=i;

        return gcd_find(n,m,temp,i+1); ///recursion

    }

    else

    {

        return gcd_find(n,m,temp,i+1); ///recursion

    }

}

int main()

{

    int n,m,temp=0;

    printf("Please Enter 1st  Number: ");

    scanf("%d",&n);

    printf("Please Enter 2nd  Number: ");

    scanf("%d",&m);

    int GCD =gcd_find(n,m,temp,1);

    printf("
The GCD of %d and %d is: %d
",n,m,GCD);

    return 0;

}

Output

Please Enter 1st  Number: 10
Please Enter 2nd  Number: 15

The GCD of 10 and 15 is: 5

Join the discussion

Add your comment