数学吧 关注:933,077贴子:8,930,834
  • 2回复贴,共1

对于a b两个自然数使用辗转相除法,怎么证明辗转相除法的次数

只看楼主收藏回复

对于a b两个自然数使用辗转相除法,怎么证明辗转相除法的次数最多是b位数的7倍?
有大佬吗?


IP属地:吉林来自Android客户端1楼2023-12-11 16:58回复
    若a>b,带余除法中a=bq+r,r<b,q≥1,所以a>2r,经过n+1次带余除法后求得最大公因数rn,每次得到的余数r1, r2, …, rn,再下一次余数为0,则r(n)|r(n-1),r(n-1)>r(n)≥1,
    若n为偶数,满足b>2r(2)>4r(4)>…>2^(n/2)*r(n)≥2^(n/2),仅当b=1,n=0时,b=2^(n/2)
    若n为奇数,b>…>2^[(n-1)/2]*r(n-1)≥2^[(n+1)/2],仅当b=2,n=1时,b=2^[(n+1)/2]
    可知n+1≤2logb+1,这里log以2为底
    也就是n+1≤2lgb/lg2+1,2/lg2<7,b大于100时都是小于b位数的7倍的,其实对任何正整数b,除的次数都不会超过7倍


    IP属地:北京来自Android客户端2楼2023-12-11 17:51
    回复
      2026-01-09 08:08:17
      广告
      不感兴趣
      开通SVIP免广告
      或者由r[k-2]=r[k-1]*q+r[k]≥r[k-1]+r[k],r[n]≥1,r[n-1]≥2,令b(m)=r[n+2-m],可知b(m)≥a(m),a(m)是斐波那契数列,用b=r(0)=b(n+2)≥a(n+2)来证明


      IP属地:北京来自Android客户端3楼2023-12-11 17:59
      回复