高一新课程数学必修(Ⅲ)教案算法小结复习教学目的:总结算法解题的一般思路,即算法分析(提炼问题的数学本质)——画出程序框图——按框图编写伪代码;通过本章学习增强解题的规范性.教学重点:在准确理解算法的基础上,掌握流程图的画法及判断;掌握伪代码的编写.教学过程:例1.阅读下列伪代码,并指出当时的计算结果:(1)reada,b(2)reada,b(3)reada,bX←a+ba←a+ba←a+by←a-bb←a-bb←a-ba←(x+y)/2a←(a+b)/2a←(a-b)/2b←(x-y)/2b←(a-b)/2b←(a+b)/2Printa,bPrinta,bPrinta,ba=____,b___a=____,b___a=____,b___例2.写出用二分法求方程在区间内的一个近似解(误差不超过)的一个算法.说明:此题主要再次强调算法的问题根本上是一个思维的问题以及算法语言的基本规则;如何通过语句的结构形式规范处理及简化问题,从而增强解题的规范性.流程图与伪代码10Renda,b,c20x0←(a+b)/230f(a)←a3-a-140f(x0)←x03-x0-150Iff(x0)=0thenGoto12060Iff(a)f(x0)<0then70b←x080Else90a←x0100Endif110If|a-b|≧cthenGoto20120Printx0N以上两例重点理解赋值语句,尤其是在循环结构中如何根据对变量的理解灵活赋值,从而用简炼的语句表示算法。例3.满足方程的一组正整数称为勾股数或商高数,设计计算某一范围内的勾股数的算法.用心爱心专心115号编辑输入a,b,c输出x0b←x0a←x0f(a)←a3-a-1f(x0)←x03-x0-1X0←(a+b)/2|a-b|a(i)Thenm=a(i)a(i)=a(j)a(j)=mEndifEndForEndForFork=1tonPrinta(k)EndForEnd再用直接冒泡排序法对任意输入的n个数进行从小到大的排序,其伪代码程序如下:10Begin20Readn30Fori=1ton40Reada(i)50EndFor60Forj=1ton-170w=080Fori=1ton-190Ifa(i)>a(i+1)Then100m=a(i)110a(i)=a(i+1)120a(i+1)=m130w=w+1140endif150EndFor160Ifw=0ThenGoto180170EndFor180Fork=1ton190Printa(k)200EndFor210End用心爱心专心115号编辑用DO循环语句表示如下:BeginReadnFori=1tonReada(i)EndForDow=0Fori=1ton-1Ifa(i)>a(i+1)Thenm=a(i)a(i)=a(i+1)a(i+1)=mw=w+1endifNextiLoopUntilw=0Fork=1tonPrinta(k)EndForEnd例三与例五及算经中的“百钱百鸡”问题均对循环语句的应用提出更高要求,在算法理解及流程图的设计上思路一定要清晰。例六.(李白买酒)“无事街上走,提壶去买酒,遇店加一倍,见花喝一斗,三遇店和花,喝光壶中酒”.设计求酒壶中原有多少酒的一个算法并写出伪代码.S=0ForIfrom1to3S←(S+1)/2EndForPintS例七.一个三位数,如果每一位数字的立方和等于它本身,则称之为“水仙花数”.设计一个算法,找出所有的水仙花数,用伪代码表示.Fornfrom100to999←int(n/100)←int((n-100x)/10)z←n-100-10Ifn=3+3+z3thenPintnEndIfNextnEndfor例八.一辆邮车依次前往城市A1,A2,A3,…Am(),每到一个城市先卸下用心爱心专心115号...