/*--------------------------------------------------------------------*/ /* intmath.c (Version 3) */ /* Author: Bob Dondero */ /*--------------------------------------------------------------------*/ #include "intmath.h" /*--------------------------------------------------------------------*/ /* Return the greatest common divisor of positive integers iFirst and iSecond. */ int gcd(int iFirst, int iSecond) { int iTemp; /* Use Euclid's algorithm. */ while (iSecond != 0) { iTemp = iFirst % iSecond; iFirst = iSecond; iSecond = iTemp; } return iFirst; } /*--------------------------------------------------------------------*/ /* Return the least common multiple of positive integers iFirst and iSecond. */ int lcm(int iFirst, int iSecond) { return (iFirst / gcd(iFirst, iSecond)) * iSecond; }