第1个回答 2006-01-17
求两个数的最大公约数的方法
两个数的最大公约数是整数,其值应不大于两个数中的小的那个数,应不小于1。
公约数即能除尽给定的那两个数的整数,余数为0。
最大公约数是公约数中最大的那个数。
程序设计:
(1)比较已给两数大小,选出小的
int x,y
if (x > y ) 则y小
(2)循环语句
for (i=小的那个数;i>=1;i--)
如果i能整除两者则输出结果。
if ( (x/i*i== x) && (y/i*i == y)) break;
printf("最大公约数是 %d\n",i);
第2个回答 2018-05-18
大数。整除时的除数就是最大公约数。举例:
222 407求最大公约数:
222 407(407除以222余数185)
222 185(222除以185余数37)
37 185(185除以37余数0)
所以最大公约数为37
39 24求最大公约数
39 24(39/24,余数15)
15 24(24/15,余数9)
15 9(15/9,余数6)
6 9(9/6,余数3)
6 3(6/3,余数0)
所以最大公约数为3本回答被网友采纳
第3个回答 2006-01-16
int t,r;
if(v>u)
{
t=u;u=v;v=t;
}
while((r=u%v)!=0)
{
u=v;v=r;
}
return(v)