최대공약수를 구할 때, 유클리드 알고리즘을 사용하면 빠르게 구할 수 있다.
int gcd(int a, int b)
{
int c;
while(b!=0)
{
c = a % b;
a = b;
b = c;
}
return a;
}
위에서 구한 최대공약수를 이용하여 최소공배수를 구할 수 있다.
int lcm(int a, int b)
{
return a * b / gcd(a, b);
}