|  | Home | Libraries | People | FAQ | More | 
Header: <boost/math/common_factor_rt.hpp>
template < typename IntegerType > IntegerType boost::math::gcd( IntegerType const &a, IntegerType const &b ); template < typename ForwardIterator > std::pair<typename std::iterator_traits<I>::value_type, I> gcd_range(I first, I last); template < typename IntegerType > IntegerType boost::math::lcm( IntegerType const &a, IntegerType const &b );
      The boost::math::gcd
      function template returns the greatest common (nonnegative) divisor of the
      two integers passed to it. boost::math::gcd_range is the iteration of the above gcd
      algorithm over a range, returning the greatest common divisor of all the elements.
      The algorithm terminates when the gcd reaches unity or the end of the range.
      Thus it also returns the iterator after the last element inspected because
      this may not be equal to the end of the range. The boost::math::lcm function
      template returns the least common (nonnegative) multiple of the two integers
      passed to it. The function templates are parameterized on the function arguments'
      IntegerType, which is also the return type. Internally, these function templates
      use an object of the corresponding version of the gcd_evaluator
      and lcm_evaluator class templates,
      respectively.