问题:数字a,b,(设a>=b),求a,b,的最大公因数。
方法:a/b=s1........r1, b/r1=s2..........r2, r1/r2=s3........r3 ,rn/r(n+1)=s(n+2).......0 每次都把上一次的分母改为分子,上一次的余数改为分母;直到余数为0;则这次的分母即为a,b的最大公因数;因为最后一次是整除,所以最后一次的分母r(n+1)即为rn和r(n+1)的最大公因数,即上面所有两个数之间的最大公因数都是r(n+1);
证明:即证gcd(a,b)=gcd(b,r1)(递推,一直推到rn/r(n+1)=s(n+2))
令a=mc,b=nc;(设m,n互质,gcd(a,b)=c)
r1=a-b*s1;
r1=mc-nc*s1=c(m-n*s1);
b=nc;
若gcd(a,b)=gcd(b,r1)=c,则(m-n*s1)和n互质;
假设不互质,有公因数d.
设m-ns1=xd,n=yd(d>1,x,y互质),则m=xd+ns1=yd*s1+xd=d(ys1+x),又a=mc=(ys1+x)d*c,b=yd*c,则gcd(a,b)=dc,而不是c,这与假设矛盾,故假设错误,二者互质,得证;