如果数 a 能被数 b 整除,a 就叫做 b 的倍数。b 就叫做 a 的约数。
最大公约数
几个整数中公有的约数,叫做这几个数的公约数。其中最大的一个,叫做这几个数的最大公约数。
12、16 的公约数有 1、2、4,其中最大的一个是 4,所以 4 是 12 和 16 的最大公约数。
12、15、18 的最大公约数是 3。
最小公倍数
几个整数中公有的的倍数,叫做这几个数的公倍数。其中最小的一个,叫做这几个数的最小公倍数。
4 的倍数有 4、8、12、16 …..
6 的倍数有 6、12、18、24 ….
4 和 6 的公倍数有 12、24 ….
其中最小的是 12,所以 12 是 4 和 6 的最小公倍数。
#include <stdio.h>
// 最大公约数
int iGcd(int iU, int iV)
{
int iRemainder = iU%iV;
while(iRemainder != 0)
{
iU = iV;
iV = iRemainder;
iRemainder = iU%iV;
}
return iV;
}
// 最小公倍数
int iLcm(int iU, int iV)
{
return (iU*iV)/iGcd(iU, iV);
}
int main()
{
printf("%d %d\n", iGcd(6, 4), iLcm(6, 4));
return 0;
}