欧几里得辗转相除法证明及推论
来源:互联网 发布:java调用kettle 编辑:程序博客网 时间:2024/04/30 11:56
一、辗转相除法定义
辗转相除法:以大数除以小数,如果能整除,那么小数就是所求的最大公约数(Greatest CommonDivisor:gcd)。否则就用余数来除刚才的除数;再用这新除法的余数去除刚才的余数。依此类推,直到一个除法能够整除,这时作为除数的数就是所求的最大公约数。即:gcd(x,y)表示x与y的最大公约数,有gcd(x,y)=gcd(y,x%y),如此便可把原问题转化为求两个更小数的公约数,直到其中一个数为0,剩下的另外一个数就是两者的最大公约数。
- 例如:求 4453 和 5767 的最大公约数时,可作如下除法.
5767÷4453=1 余 1314
4453÷1314=3 余 511
1314÷511 =2 余 292
511 ÷292 =1 余 219
292 ÷219 =1 余 73
219÷73=3 于是得知,5767 和 4453 的最大公约数是 73。辗转相除法适用比较广,比短除法要好得多,它能保证求出任意两个数的最大公约数。
二、欧几里得辗转相除法证明
辗转相除法就是给出了一个关系:
设u同时整除a和b,则有
则
则
综上:a和b的每一个公因子也是b和r的一个因子,反之亦然。所以a和b的全体公因子集合就与b和r的全体公因子集合相同。所以gcd(a,b)=gcd(b,r)。
三、推论
推论一:如果
d=gcd(a,b) ,则能找到正的或负的整数k 和l ,使得d=ka+lb.
我们在使用辗转相除法时,由于
……..
只要余数
此时,我们就得到
在公式一中,我们可以推出
推论二:如果一个素数p整除乘积ab,则p必整除a或b。
因为p整除ab,所以
因素数p仅有因子p和1,所以如果p不整除a,则gcd(a,p)=1,根据上面的推论一我们能找到整数
同理,当p不整除b时,可以证得p整除a。
综上,命题“如果一个素数p整除乘积ab,则p必整除a或b”得证。
注意:不妨举几个例子印证推论二。
- 13是2652的一个因子,以及2652=6*442,就可以得出13是442的因子。
- 6是240的一个因子,而240=15*16,但6既不是15也不是16的因子。why?这表明p是素数这个前提是不可或缺的。
- 欧几里得辗转相除法证明及推论
- 欧几里得辗转相除法及费马小定理
- 欧几里得算法(辗转相除法)证明过程
- 辗转相除法证明及复杂度计算
- 欧几里得辗转相除法
- 欧几里得辗转相除法
- 证明辗转相除法
- 辗转相除法证明
- 辗转相除法证明
- 辗转相除法---欧几里得算法
- 辗转相除法简单证明
- 辗转相除法的证明
- 辗转相除法的证明
- 辗转相除法的证明
- 辗转相除法的证明
- 最大公约数 - 辗转相除法证明
- 辗转相除法(欧几里得算法)示意图
- 欧几里得算法之辗转相除法
- Android ContentProvider应用
- Resnet改进的色情图片检测-nsfw
- Makefile 中subst、foreach、wildcard、notdir函数
- PHP 异常处理
- Java常考面试题9 抽象方法用哪些修饰符修饰?
- 欧几里得辗转相除法证明及推论
- iOS关于枚举的使用
- BZOJ 1131: [POI2008]Sta 树形DP
- dumpbin的使用
- 40个Java多线程问题总结
- 网站的分布式架构
- Mysql解决The total number of locks exceeds the lock table size错误
- Win7 pySpark安装
- AtCoder Grant Contest 10 F - Tree Game 博弈 dfs