辗转相除法的证明
2016-05-24 10:16
330 查看
描述:关于辗转相除法的具体实现在这里就不具体说明了,本文要记录的是辗转相除法应用于求最大公约数的算法证明过程。
假设:
求m和n的最大公约数。
a,b分别是m除以n的商和余数,即m=na+b。
gcd(m,n)表示m和n的最大公约数。
求证:gcd(m,n)=gcd(n,b)
证明:
设c=gcd(m,n), d=gcd(n,b)
1. ∵c为m和n的公约数
∴m能被c整除,n也能被c整除
∴na也能被c整除 参照推论一
∴m-na也能被c整除(即b能c整除) 参照推论二
∴c为n和b的公约数
∵d为n和b的最大公约数
∴c≤d
2. 同理可证 d≤c
∵d为n和b的公约数
∴n能被d整除,b也能被d整除
∴na也能被d整除 参照推论一
∴na+b也能被d整除(即m能d整除) 参照推论二
∴d为m和n的公约数
∵c为m和n的最大公约数
∴d≤c
综上所述:c=d,即gcd(m,n)=gcd(n,r)
推论一:若a能被b整除(a=tb),则如果k为正整数,则ka也能被b整除(ka=ktb)。
推论二:若a能被c整除,b也能被c整除,则(a±b)也能被c整除。
假设:
求m和n的最大公约数。
a,b分别是m除以n的商和余数,即m=na+b。
gcd(m,n)表示m和n的最大公约数。
求证:gcd(m,n)=gcd(n,b)
证明:
设c=gcd(m,n), d=gcd(n,b)
1. ∵c为m和n的公约数
∴m能被c整除,n也能被c整除
∴na也能被c整除 参照推论一
∴m-na也能被c整除(即b能c整除) 参照推论二
∴c为n和b的公约数
∵d为n和b的最大公约数
∴c≤d
2. 同理可证 d≤c
∵d为n和b的公约数
∴n能被d整除,b也能被d整除
∴na也能被d整除 参照推论一
∴na+b也能被d整除(即m能d整除) 参照推论二
∴d为m和n的公约数
∵c为m和n的最大公约数
∴d≤c
综上所述:c=d,即gcd(m,n)=gcd(n,r)
推论一:若a能被b整除(a=tb),则如果k为正整数,则ka也能被b整除(ka=ktb)。
推论二:若a能被c整除,b也能被c整除,则(a±b)也能被c整除。
相关文章推荐
- session 、cookie、token的区别
- CodeForces - 420A (字符对称问题)
- 以前在网络相关的公司学到的,记录一下,http协议和https协议的区别
- CodeForces - 417E(随机数)
- CodeForces - 417B (思维题)
- CodeForces - 417A(思维题)
- 属性访问函数
- CodeForces - 416A (判断大于小于等于 模拟题)
- 使用Redis保存Spring session(基于XML配置文件)
- session 、cookie、token的区别
- CodeForces - 407A
- CodeForces - 407B
- 模式识别(Pattern Recognition)学习笔记(十二)--SVM(广义):大间隔
- 83-Add Binary
- awk入门
- linux生成指定大小的文件
- 后台给GridView绑定数据时给每一行添加一个JS方法
- 网格弹簧质点系统模拟(Spring-Mass System by Fast Method)附源码
- CodeForces - 405C
- GridView相关问题解决