求两个整数的最大公约数和最小公倍数
最大公约数:
class MyMath
{
public int GetMaxDiv(int a, int b)
{
if(a >= b)
{
return getMaxDiv(a,b);
}
else
{
return getMaxDiv(b,a);
}
}
private int getMaxDiv(int a, int b)
{
if(b ==0)
{
return a;
}
if(a == b)
{
return a;
}
return getMaxDiv(b,a%b);
}
}
最小公倍数:(正整数转化为二进制后,计算有多少个1)
private int GetCount(int n)
{
if(n<=0)
{
return 0;
}
int sum =0;
while(n > 0)
{
sum += n %2;
n = n/2;
}
return sum;
}