# C++ Program for GCD of more than two (or array) numbers

The GCD of three or more numbers equals the product of the prime factors common to all the numbers, but it can also be calculated by repeatedly taking the GCDs of pairs of numbers.

gcd(a, b, c) = gcd(a, gcd(b, c)) = gcd(gcd(a, b), c) = gcd(gcd(a, c), b)

`// C++ program to find GCD of two or ` `// more numbers ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `// Function to return gcd of a and b ` `int` `gcd(` `int` `a, ` `int` `b) ` `{ ` ` ` `if` `(a == 0) ` ` ` `return` `b; ` ` ` `return` `gcd(b % a, a); ` `} ` ` ` `// Function to find gcd of array of ` `// numbers ` `int` `findGCD(` `int` `arr[], ` `int` `n) ` `{ ` ` ` `int` `result = arr[0]; ` ` ` `for` `(` `int` `i = 1; i < n; i++) ` ` ` `result = gcd(arr[i], result); ` ` ` ` ` `return` `result; ` `} ` ` ` `// Driven code ` `int` `main() ` `{ ` ` ` `int` `arr[] = { 2, 4, 6, 8, 16 }; ` ` ` `int` `n = ` `sizeof` `(arr) / ` `sizeof` `(arr[0]); ` ` ` `cout << findGCD(arr, n) << endl; ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

**Output:**

2

Please refer complete article on GCD of more than two (or array) numbers for more details!

## Recommended Posts:

- Java Program for GCD of more than two (or array) numbers
- Find numbers which are multiples of first array and factors of second array
- Absolute difference between the Product of Non-Prime numbers and Prime numbers of an Array
- Absolute Difference between the Sum of Non-Prime numbers and Prime numbers of an Array
- Program for Armstrong Numbers
- Program to find GCD or HCF of two numbers
- Program to find LCM of two numbers
- C Program to Swap two Numbers
- Program to find LCM of 2 numbers without using GCD
- Program for Perrin numbers
- Program for Fibonacci numbers
- Program for harmonic mean of numbers
- Program to find first N Fermat Numbers
- Write a program to add two numbers in base 14
- Program for weighted mean of natural numbers.