typedef int INT;
INT gcd(INT a, INT b);
/*****************************************************************************
* 函数:lcm *
* 参数:a:数字1. *
* b:数字2. *
* 返回值:返回a和b的最小公倍数. *
* 功能:计算并返回a和b的最小公倍数. *
* 说明:调用函数:INT gcd(INT a, INT b); *
*****************************************************************************/
INT lcm(INT a, INT b)
{
return a / gcd(a, b) * b;
}
/*****************************************************************************
* 函数:gcd *
* 参数:a:数字1. *
* b:数字2. *
* 返回值:返回a和b的最大公约数. *
* 功能:计算并返回a和b的最大公约数(递归版本). *
*****************************************************************************/
/*
INT gcd(INT a, INT b)
{
if (0 == b)
return a;
return gcd(b, a % b);
}
*/
/*****************************************************************************
* 函数:gcd *
* 参数:a:数字1. *
* b:数字2. *
* 返回值:返回a和b的最大公约数. *
* 功能:计算并返回a和b的最大公约数(循环版本). *
*****************************************************************************/
INT gcd(INT a, INT b)
{
INT nTem;
while (0 != b)
{
nTem = b;
b = a % b;
a = nTem;
}
return a;
}