求两个数字的最大公倍数和最小公约数的算法是怎么样的?一时不小心打错了
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 07:42:31
求两个数字的最大公倍数和最小公约数的算法是怎么样的?一时不小心打错了
求两个数字的最大公倍数和最小公约数的算法是怎么样的?
一时不小心打错了
求两个数字的最大公倍数和最小公约数的算法是怎么样的?一时不小心打错了
如果是你敲错了字(不是脑筋急转弯)的话,
求两个数字的最大公约数和最小公倍数的方法:
可以先用辗转相除法求出这两个数的最大公约数,
再用这两个数的乘积除以它们的最大公约数,就得到它们的最小公倍数.
用计算机C语言实现的程序如下:
设两个整数为u和v,用辗转相除法求最大公约数的算法.最小公倍数=uv/最大公约数.
程序如下:
#include
int hcf(int u,int v)
{ int t,r;
if(v>u)
{ t=u;u=v;v=t;}
while((r=u%v)!=0)
{ u=v;
v=r;
}
return(v);
}
int lcd(int u,int v,int h)
{
return(u*v/h);
}
main( )
{ int u,v,h,l;
scanf("%d,%d",&u,&v);
h=hcf(u,v);
printf("H.C.F=%d\n",h);
l=lcd(u,v,h);
printf("L.C.D=%d\n",l);
}
运行结果如下:
24,16↙
H.C.F=8
L.C.D=48
都化为质数
不过,我觉得你是不是问错了,应该是最小公倍数,最大公约数吧……
顶楼上的,
比如6和8,
先化为质数
最大公约数等于:
(格式)
(6,8)=2
最小公约数:
(格式)
[6,8]=2*3*4=24
(注明:*就是×.)
两个数是没有最大公倍数和最小公约数的
2个数的最大公倍数 将会是无穷大
2个数的最小公约数 则会是无穷小
2个数的最大公倍数 将会是大
2个数的最小公约数 则会是小