mirror of
https://hub.njuu.cf/TheAlgorithms/C-Plus-Plus.git
synced 2023-10-11 13:05:55 +08:00
28 lines
537 B
C++
28 lines
537 B
C++
|
// C++ program to find GCD of two numbers
|
||
|
#include <iostream>
|
||
|
|
||
|
// Recursive function to return gcd of a and b
|
||
|
int gcd(int a, int b) {
|
||
|
// Everything divides 0
|
||
|
if (a == 0)
|
||
|
return b;
|
||
|
if (b == 0)
|
||
|
return a;
|
||
|
|
||
|
// base case
|
||
|
if (a == b)
|
||
|
return a;
|
||
|
|
||
|
// a is greater
|
||
|
if (a > b)
|
||
|
return gcd(a-b, b);
|
||
|
return gcd(a, b-a);
|
||
|
}
|
||
|
|
||
|
// Driver program to test above function
|
||
|
int main() {
|
||
|
int a = 98, b = 56;
|
||
|
std::cout << "GCD of " << a << " and " << b << " is " << gcd(a, b);
|
||
|
return 0;
|
||
|
}
|