- 1
- 0
- 约3.21千字
- 约 26页
- 2019-12-19 发布于广西
- 举报
* 1.3 算法案例 问题提出 1.研究一个实际问题的算法,主要从算法步骤、程序框图和编写程序三方面展开.在程序框图中算法的基本逻辑结构有哪几种?在程序设计中基本的算法语句有哪几种? 2.“求两个正整数的最大公约数”是数学中的一个基础性问题,它有各种解决办法,我们以此为案例,对该问题的算法作一些探究. 知识探究(一):辗转相除法 思考1:18与30的最大公约数是多少?你是怎样得到的? 先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来即为最大公约数. 例. 求30和75的最大公约数 所以,30和35的最大公约数为15 30 3 10 75 25 5 2 5 思考2:对于8251与6105这两个数,由于其公有的质因数较大,利用上述方法求最大公约数就比较困难.注意到8251=6105×1+2146,那么8251与6105这两个数的公约数和6105与2146的公约数有什么关系? 思考3:又6105=2146×2+1813,同理,6105与2146的公约数和2146与1813的公约数相等.重复上述操作,你能得到8251与6105这两个数的最大公约数吗? 2146=1813×1+333, 148=37×4+0. 333=148×2+37, 1813=333×5+148, 8251=6105×1+2146, 6105=2146×2+1813, 辗转相除法是一个反复执行直到余数等于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? 是 否 思考5:上述求两个正整数的最大公约数的方法称为辗转相除法或欧几里得算法.一般地,用辗转相除法求两个正整数m,n的最大公约数,可以用什么逻辑结构来构造算法?其算法步骤如何设计? 第一步,给定两个正整数m,n(mn). 第二步,计算m除以n所得的余数r. 第三步,m=n,n=r. 第四步,若r=0,则m,n的最大公约数等 于m;否则,返回第二步. 思考5:该算法的程序框图如何表示? 开始 输入m,n 求m除以n的余数r m=n n=r r=0? 是 输出m 结束 否 思考6:该程序框图对应的程序如何表述? INPUT m,n DO r=m MODn m=n n=r LOOP UNTIL r=0 PRINT m END 开始 输入m,n 求m除以n的余数r m=n n=r r=0? 是 输出m 结束 否 思考7:如果用当型循环结构构造算法,则用辗转相除法求两个正整数m,n的最大公约数的程序框图和程序分别如何表示? 开始 输入m,n 求m除以n的余数r m=n n0? 否 输出m 结束 是 n=r INPUT m,n WHILE n0 r=m MODn m=n n=r WEND PRINT m END 练习1:利用辗转相除法求两数4081与20723的最大公约数. (53) 20723=4081×5+318; 4081=318×12+265; 318=265×1+53; 265=53×5+0. 知识探究(二):更相减损术 思考1:设两个正整数mn,若m-n=k,则m与n的最大公约数和n与k的最大公约数相等.反复利用这个原理,可求得98与63的最大公约数为多少? 98-63=35, 14-7=7. 21-7=14, 28-7=21, 35-28=7, 63-35=28, 思考2:上述求两个正整数的最大公约数的方法称为更相减损术.一般地,用更相减损术求两个正整数m,n的最大公约数,可以用什么逻辑结构来构造算法?其算法步骤如何设计? 第一步,给定两个正整数m,n(mn). 第二步,计算m-n所得的差k. 第三步,比较n与k的大小,其中大者用m表 示,小者用n表示. 第四步,若m=n,则m,n的最大公约数等于 m;否则,返回第二步. 思考3:该算法的程序框图如何表示? 开始 输入m,n nk? m=n 是 输出m 结束 m≠n? k=m-n 是 否 n=k m=k 否 思考4:该程序框图对应的程序如何表述? INPUT m,n WHILE mn k=m-n IF nk THEN m=n n=k ELSE m=k END IF WEND PRINT m END 开始 输入m,n nk? m=n 是 输出m 结束 m≠n? k=m-n 是 否 n=k m=k 否 “更相减损术”在中国古代数学专著《九章算术》中记
您可能关注的文档
最近下载
- 2026年考试题光谱分析基础理论知识测试题库.docx VIP
- 怎样把交流电变成直流电.ppt VIP
- 吹膜新员工安全培训课件.pptx VIP
- 2026年湖南财经工业职业技术学院单招职业技能测试题库附答案详解.docx VIP
- 建筑施工技术说课课件.ppt VIP
- 绿色清新模板.ppt VIP
- 2026年绵阳市国资委社会化招聘机关工作人员的备考题库及答案详解一套.docx VIP
- 国家建筑标准设计图集22G101-3 混凝土结构施工图平面整体表示方法制图规则和构造详图(独立基础、条形基础、筏形基础、桩基础).pdf VIP
- 2026年常州工业职业技术学院单招职业适应性测试题库带答案解析.docx VIP
- 斜拉桥异形钢主塔竖向转体施工工法.pdf VIP
原创力文档

文档评论(0)