急求算法:两个数的最小公倍数和最小公约数??
高手请帮忙,在线等...谢谢. 问题点数:20、回复次数:5Top
1 楼pcboyxhy(-273.15℃)回复于 2005-04-22 14:04:13 得分 0
最小公约数是 1
孩子Top
2 楼zengwujun(月之海 为linux入门奋斗100天)回复于 2005-04-22 14:06:05 得分 10
int Yue(int a,int b)
{
int min,max,d;
min=a>b?b:a;
max=a>b?a:b;
while(min>0)
{
d=max%min;
max=min;
min=d;
}
return max;
}
int Bei(int a,int b)
{
return a*b/Yue(a,b);
}Top
3 楼pcboyxhy(-273.15℃)回复于 2005-04-22 14:15:24 得分 10
int Yue(int p, int q)
{
while(p && q)
{
p %= q;
if(p)
q%=p;
}
return (p+q);
}
Top
4 楼yxzbbc(口 水)回复于 2005-04-22 14:29:33 得分 0
最大公约数
int MaxYue(int a,int b)
{
int min,max,d;
min=a>b?b:a;
max=a>b?a:b;
while(min>0)
{
d=max%min;
max=min;
min=d;
}
return max;
}
最小公倍数
int MinGong(int a,int b)
{
return a*b/MaxYue(a,b);
}
比如a=9,b=6
则最大公约数 c = MaxYue(9,6)=3
最小公倍数 d = MinGong(9,6)=18
Top
5 楼mitchy(mitchy chien)回复于 2005-04-22 14:30:48 得分 0
不知-273.15℃:该算法的思想是什么呢?Top




