GCD function in c++ sans cmath library

Connor Black picture Connor Black · Jun 9, 2012 · Viewed 78.5k times · Source

I'm writing a mixed numeral class and need a quick and easy 'greatest common divisor' function. Can anyone give me the code or a link to the code?

Answer

Tomasz Posłuszny picture Tomasz Posłuszny · Dec 18, 2013

The libstdc++ algorithm library has a hidden gcd function (I'm using g++ 4.6.3).

#include <iostream>
#include <algorithm>

int main()
{
  cout << std::__gcd(100,24);
  return 0;
}

You are welcome :)

UPDATE: As @chema989 noted it, in C++17 there is std::gcd() function available with <numeric> header.