例:用辗转相除法求225和135的最大公约数 225=135×1+90 135=90X145 90=45×2 显然45是90和45的最大公约数,也就是225和135的最 大公约数 思考1:从上面的两个例子中可以看出计算的规 律是什么? s1:用大数除以小数 s2:除数变成被除数,余数变成除数 s3:重复S1,直到余数为0
例: 用辗转相除法求225和135的最大公约数 225=135×1+90 135=90×1+45 90=45×2 显然45是90和45的最大公约数,也就是225和135的最 大公约数 思考1:从上面的两个例子中可以看出计算的规 律是什么? S1:用大数除以小数 S2:除数变成被除数,余数变成除数 S3:重复S1,直到余数为0
思考A相除法中饮天步是哪种逻构 辗转相除法是一个反复执行直到余数等于0才停 止的步骤,这实际上是一个循环结构。m=n×q+r 用程序框图表示出右边的过程 8251=6105×1+2146 r=m mod n 6105=2146×2+1813 m= n 2146=1813×1+333 n=r 0? 1813=333×5+148 否 333=148×2+37 148=37×4+0
辗转相除法是一个反复执行直到余数等于0才停 止的步骤,这实际上是一个循环结构。 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333 1813=333×5+148 333=148×2+37 148=37×4+0 m = n × q + r 用程序框图表示出右边的过程 r=m MOD n m = n n = r r=0? 是 否
思考:你能把辗转相除法编成一个计算机程 序吗? (1)、算法步骤: 第一步:输入两个正整数m,n(m>n) 第二步:计算m除以n所得的余数r 第三步:m=n,n=r 第四步:若r=0,则m,n的最大公约数等于m; 否则,返回第二步. 第五步:输出最大公约数m
思考:你能把辗转相除法编成一个计算机程 序吗? (1)、算法步骤: 第一步:输入两个正整数m,n(m>n). 第二步:计算m除以n所得的余数r. 第三步:m=n,n=r. 第四步:若r=0,则m,n的最大公约数等于m; 否则,返回第二步. 第五步:输出最大公约数m
(2)、程序框图: 开始 输入m,n r=m mod n mEn nEr 否 r=0? 是 输出m 结束
(2)、程序框图: 开始 输入m,n r=m MOD n m=n r=0? 是 否 n=r 输出m 结束
(3)、程序: INPUT mn DO r=m mod n mEn mEr LOOP UNTIL r=O PRINT m END
(3)、程序: INPUT m,n DO r=m MOD n m=n n=r LOOP UNTIL r=0 PRINT m END