利用辗转相除法求最大公约数的步骤如下: 第一步:用较大的数m除以较小的数n得到 个商q和一个余数r;(m=n×qo+r 第二步:若ro=0,则n为m,n的最大公约 数;若ro≠0,则用除数n除以余数r得到一个 商q和一个余数r1;(n=r×q1+r) 第三步:若r1=0,则r为m,m的最大公约 数;若r1≠0,则用除数r0除以余数r1得到一个 商q2和一个余数r2;(r=r1×q2+r2) 依次计算直至rn=0,此时所得到的rn1 即为所求的最大公约数。 >2呢签哪吵米
利用辗转相除法求最大公约数的步骤如下: 第一步:用较大的数m除以较小的数n得到 一个商q0和一个余数r0;(m=n×q0+r0) 第二步:若r0=0,则n为m,n的最大公约 数;若r0≠0,则用除数n除以余数r0得到一个 商q1和一个余数r1;(n=r0×q1+r1) 第三步:若r1=0,则r0为m,n的最大公约 数;若r1≠0,则用除数r0除以余数r1得到一个 商q2和一个余数r2;(r0=r1×q2+r2) …… 依次计算直至rn =0,此时所得到的rn-1 即为所求的最大公约数
辗转相除法求最大 公约数算法: 第一步给定两个正数m,n 第二步,计算m除以n所得到余数r 第三步,m=n,n=r 第四步,若r=0,则m,n的最大公约数等于m; 否则返回第二步
• 第一步,给定两个正数m,n • 第二步,计算m除以n所得到余数r • 第三步,m=n,n=r • 第四步,若r=0,则m,n的最大公约数等于m; 否则返回第二步 辗转相除法求最大 公约数算法:
4.辗转相除法的程序框图及程序: C开始 INPUT mn 输入两个正数m F m<n then XEn 是 m<n? nEm XEn 否 mEX n≡ m END IF m≡xr= m mod n WHILE K<>0 r= m mod n「n=r mEn 是[mnn=r r:0? m mod n 输出n WEND PRInT n C结束 END
否 4. 辗转相除法的程序框图及程序: 开始 输入两个正数m,n m<n? r=m MOD n r≠0? 输出n 结束 m=x m=n n=r 否 是 是 INPUT m,n IF m<n THEN x=n n=m m=x END IF r=m MOD n WHILE r<>0 m=n n=r r=m MOD n WEND PRINT n END x=n n=m
练习1:利用辗转相除法求两数4081与 20723的最大公约数 20723=4081×5+318; 4081=318×12+265; 318=265×1+53 265=53×5+0
练习1:利用辗转相除法求两数4081与 20723的最大公约数. 20723=4081×5+318; 4081=318×12+265; 318=265×1+53; 265=53×5+0
2.更相减损术: 我国早期也有解决求最大公约数问题的算 法,就是更相减损术。 更相减损术求最大公约数的步骤如下:可 半者半之,不可半者,副置分母子之数,以少 减多,更相减损,求其等也,以等数约之。 翻译出来为:第一步:任意给出两个正数 判断它们是否都是偶数。若是,用2约简;若不是, 执行第二步。 第二步:以较大的数减去较小的数,接着把 较小的数与所得的差比较,并以大数减小数。继 续这个操作,直到所得的数相等为止,则这个数 (等数)就是所求的最大公约数
2.更相减损术: 我国早期也有解决求最大公约数问题的算 法,就是更相减损术。 更相减损术求最大公约数的步骤如下:可 半者半之,不可半者,副置分母·子之数,以少 减多,更相减损,求其等也,以等数约之。 翻译出来为:第一步:任意给出两个正数; 判断它们是否都是偶数。若是,用2约简;若不是, 执行第二步。 第二步:以较大的数减去较小的数,接着把 较小的数与所得的差比较,并以大数减小数。继 续这个操作,直到所得的数相等为止,则这个数 (等数)就是所求的最大公约数