//多个数的公倍数
public static Int32 GetMinGB(Int32[] arr)
{
Int32 min = 0;
for (Int32 i = arr.Max(); true; i++)
{
Boolean flag = true;
for (Int32 j = 0; j < arr.Length; j++)
{
if (i % arr[j] != 0)
{
flag = false;
break;
}
}
if (flag)
{
min = i;
break;
}
}
return min;
}
static int lcm(int a, int b) //最小公倍数 = 两数乘积 / 最大公约数
{
return a * b / gcd(a, b);
}
private static int gcd(int a, int b)
{
int c;
while ((c = a % b) != 0) //辗转相除法,求两个数的最大公约数。
{
a = b;
b = c;
}
return b;
}