谁能更详细的讲一下辗转相除法(欧几里得算法)

 我来答
旷金生行黛
2020-05-04 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:33%
帮助的人:1165万
展开全部
就是把上一轮有余数的除法计算中,
除数变为下一轮计算的被除数,
余数变为下一轮计算的除数,
一直这样计算下去,
直到最后一次计算余数为零,
在最后一轮计算中的被除数,即为所求的最大公约数。
举例:
105和85的最大公约数
第一轮计算
105÷85=1...20
第二轮计算
85÷20=4...5
第三轮计算
20÷5=4
第三轮没有余数,
因此
105和85的最大公约数就是第三轮计算的被除数
5.
至于c语言编程,下边是我自己写的g函数(思想就是辗转相除法求最大公约数)
int
g(int
x,int
y)
{
int
t;
while(y!=0)
{
t=x%y
;
x=y;
y=t;
}
return
x;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
通耕顺汉巳
2019-05-28 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:25%
帮助的人:1301万
展开全部
是为了找出A、B的最大公约数
计算出A除B的余数R
如果R=0那麼B为A、B的最大公约数
如果R不等於0,则把新的除数B作为新的被除数,
把余数R作为新的除数,一直运算,直到余数为0,
此时的除数及为正整数A、B的最大公约数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式