辗转相除法的原理是什么?

辗转相除法的原理是什么?,第1张

辗转相除法一般指欧几里得算法。欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数。那么辗转相除法的原理是什么?

1、 原理:设两数为a、b(ab),用gcd(a,b)表示a,b的最大公约数,r=a(mod b)为a除以b的余数,k为a除以b的商,即a÷b=k。。。。。。。r。辗转相除法即是要证明gcd(a,b)=gcd(b,r)。

2、 第一步:令c=gcd(a,b),则设a=mc,b=nc。

3、 第二步:根据前提可知r=a-kb=mc-knc=(m-kn)c。

4、 第三步:根据第二步结果可知c也是r的因数。

5、 第四步:可以断定m-kn与n互质(假设m-kn=xd,n=yd(d1),则m=kn+xd=kyd+xd=(ky+x)d,则a=mc=(ky+x)cd,b=nc=ycd,则a与b的一个公约数cdc,故c非a与b的最大公约数,与前面结论矛盾),因此c也是b与r的最大公约数。

6、 从而可知gcd(b,r)=c,继而gcd(a,b)=gcd(b,r)。

7、 证毕。以上步骤的 *** 作是建立在刚开始时r≠0的基础之上的。即m与n亦互质。

8、 解释:辗转相除法,又名欧几里德算法(Euclidean algorithm)乃求两个正整数之最大公因子的算法。它是已知最古老的算法,其可追溯至公元前300年前。

9、 来源:设两数为a、b(ab),求a和b最大公约数(a,b)的步骤如下:用a除以b,得a÷b=q。。。。。。r1(0≤r1)。若r1=0,则(a,b)=b;若r1≠0,则再用b除以r1,得b÷r1=q。。。。。。r2(0≤r2)。若r2=0,则(a,b)=r1,若r2≠0,则继续用r1除以r2,……如此下去,直到能整除为止。其最后一个余数为0的除数即为(a, b)的最大公约数。

10、 例如:a=25,b=15,a/b=1。。。。。.10,b/10=1。。。。。.5,10/5=2。。。。。。.0,最后一个余数为0d的除数就是5, 5就是所求最大公约数。

以上的就是关于辗转相除法的原理是什么的内容介绍了。

原理:

设两数为a、b(a>b),用gcd(a,b)表示a,b的最大公约数,r=a (mod b) 为a除以b的余数,k为a除以b的商,即a÷b=k.......r。辗转相除法即是要证明gcd(a,b)=gcd(b,r)。

第一步:令c=gcd(a,b),则设a=mc,b=nc

第二步:根据前提可知r =a-kb=mc-knc=(m-kn)c

第三步:根据第二步结果可知c也是r的因数

第四步:可以断定m-kn与n互质(假设m-kn=xd,n=yd (d>1),则m=kn+xd=kyd+xd=(ky+x)d,则a=mc=(ky+x)cd,b=nc=ycd,则a与b的一个公约数cd>c,故c非a与b的最大公约数,与前面结论矛盾),因此c也是b与r的最大公约数。

从而可知gcd(b,r)=c,继而gcd(a,b)=gcd(b,r)。

证毕。

以上步骤的 *** 作是建立在刚开始时r≠0的基础之上的。即m与n亦互质。

解释:

辗转相除法, 又名欧几里德算法(Euclidean algorithm)乃求两个正整数之最大公因子的算法。它是已知最古老的算法, 其可追溯至公元前300年前。

来源:

设两数为a、b(a>b),求a和b最大公约数(a,b)的步骤如下:用a除以b,得a÷b=q......r1(0≤r1)。若r1=0,则(a,b)=b;若r1≠0,则再用b除以r1,得b÷r1=q......r2 (0≤r2).若r2=0,则(a,b)=r1,若r2≠0,则继续用r1除以r2,……如此下去,直到能整除为止。其最后一个余数为0的除数即为(a, b)的最大公约数。

例如:a=25,b=15,a/b=1......10,b/10=1......5,10/5=2.......0,最后一个余数为0d的除数就是5, 5就是所求最大公约数。

举例说明:

不定方程为326x+78y=4,求出一组整数解x,y

求(326,78)的算式为:

326=4*78+14

14=326-4*78

78=5*14+8

8=78-5*14

14=1*8+6

6=14-1*8

8=1*6+2

2=8-1*6

6=3*2

所以

2=8-6=8-(14-8)

=2*8-14=2*(78-5*14)-14

=2*78-11*14=2*78-11*(326-4*78)

=46*78-11*326

即2=(-11)*326+46*78

所以4=(-22)*326+92*78

所以x = - 22, y = 92是不定方程326x+78y=4的一组解。

辗转相除法求两个数的最大公约数的步骤如下:

先用小的一个数除大的一个数,得第一个余数;

再用第一个余数除小的一个数,得第二个余数;

又用第二个余数除第一个余数,得第三个余数;

这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质数)。

例如求1515和600的最大公约数,

第一次:用600除1515,商2余315;

第二次:用315除600,商1余285;

第三次:用285除315,商1余30;

第四次:用30除285,商9余15;

第五次:用15除30,商2余0。

1515和600的最大公约数是15。

辗转相除法是求两个数的最大公约数的方法。如果求几个数的最大公约数,可以先求两个数的最大公约数,再求这个最大公约数与第三个数的最大公约数。这样依次下去,直到最后一个数为止。最后所得的一个最大公约数,就是所求的几个数的最大公约数。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5790165.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-01-31
下一篇 2023-01-31

发表评论

登录后才能评论

评论列表(0条)

保存