from maxdisvisor import *
def findconst(m,n,a1=1,b=1,a=0,b1=0):
"""
if d is the max disvisor,then exits a and b that make 'am+bn=d' ,find a ,b and d
"""
d = disvisor(m, n)
c=n
d=m
q = int(n/m)
r = n % m
print a1,' ',a,' ',b1,' ',b,' ',c,' ',d,' ',q,' ',r
if(r!=0):
c=d
d=r
t=a1
a1=a
a=t-q*a
t=b1
b1=b
b=t-q*b
findconst(r,m,a1,b,a,b1)
if __name__=='__main__':
findconst(551,1769)
result:
1 0 0 1 1769 551 3 116
0 1 1 -3 551 116 4 87
1 -4 -3 13 116 87 1 29
-4 5 13 -16 87 29 3 0
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25966/viewspace-293470/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25966/viewspace-293470/