《高三数学总复习优秀ppt课件(第16讲)算法(52页).ppt》由会员分享,可在线阅读,更多相关《高三数学总复习优秀ppt课件(第16讲)算法(52页).ppt(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第16讲 算 法,江苏省南通中学,主要内容,一、聚焦重点 流程图,基本算法语句,三、廓清疑点 “输出”一定是n吗?,二、破解难点 当型和直到型两种循环结构与循环语句,聚焦重点:流程图,基础知识,四种图框类型,输入、输出框,处理框,判断框,起止框,流程线,问题研究,数据存储与赋值,基本知识,数据存储,每一个变量对应一个存放的单元,赋值,直接覆盖原来单元中的任何数据,经典例题1,思路分析,思路 1:x y,y x,思路 2:使用中间量辅助,未弄清数据存储的原理,错误!,求解过程,回顾反思,(2)思维误区:直接交换,(1)基本策略:中间量过渡,经典例题2,思路分析,误认a0,求解过程,开始,a=0,
2、b=0,输出 “解集为R”,输出 “解集为”,输出 x,结束,Y,Y,N,N,确定性语句,回顾反思,(1)思想方法:分类讨论,(3)思维误区:直接用顺序结构求解,(4)思维瑕点:遗忘判断框外流程线上的“Y”和“N”,(2)解题策略:用流程图表示方程的求解过程,聚焦重点:基本算法语句,赋值语句:x1, xy,基础知识,If A Then B Else C End If,同列,同行,输入语句:Read x, Read a,b,输出语句:Print x, Print a,b,条件语句:,不能用“=”,问题研究,如何用条件语句“If-Then-Else”表示分段函数?,经典例题3,思路分析,思路1:每
3、一个条件独立使用一次If进行判断,思路2:使用条件语句“If-Then-Else”的嵌套结构,If x 1 Then y1,判断次数多 计算量大,求解过程,Read x If x - 1 Then y - 1 Else If x 1 Then yx Else y1 End If End If Print y,无需- 1x 1,运行到Else分支时已经满足x - 1,End If 与If一一对应,分行书写,回顾反思,(2)解题方法:求分段函数的函数值的算法应使用 选择结构,如分为两段以上,应使 用嵌套结构,(1)解题策略:合理使用嵌套结构,(3)思维瑕点:嵌套If语句中重复判断,破解难点:循环结
4、构与循环语句,问题研究,如何使用当型循环与直到型循环? 如何选用While语句,Do语句,For语句?,基础知识,当型循环,先判断 后循环,条件为真 循环,直到型循环,先循环后判断,条件为真 退出循环,基础知识,当型语句 WhileEnd While,While p 循环体 End While,当型循环,直到型语句 DoEnd Do,Do 循环体 Until p End Do,直到型循环,For I From “初值” To “终值” Step “步长” 循环体 End For,ForEnd For,直到型循环,经典例题4,例4 设计计算1 2 3 99的一个算法 (用伪代码表示),思路分析,
5、例4 设计计算1 2 3 99的一个算法 (用伪代码表示),思路1:逐行书写,思路2:用While语句,思路3:用Do语句,过于繁琐,不适合,思路4:用For语句,循环次数有限,均适合,求解过程,I1,存放乘积结果,计数变量,不惟一,I100也可以,追踪,While SSI I I1 End While,S1,Print S,I 99,解法1 (思路2),改为2?,求解过程,解法2 (思路2),I1,不惟一,I99也可以,While I I1 SSI End While,S1,Print S,I 98,求解过程,解法3 (思路2),I0 S1 While I End While Print S
6、,I I1 SSI,SSI I I1,要注意初始值,错误,98,求解过程,解法4,I1 S1 Do SSI I I1 Until End Do Print S,不惟一,I100也可以, 与While语句中条件的关系,I99,求解过程,解法5,S1 For I From 1 To 99 Step 1 SSI End For Print S,赋初值,循环体,I I+1,简洁,经济,回顾反思,(1)通性通法:追踪,归纳,(2)思路比较:思路2、思路3能对任何条件进行判 断,思路4实际上是在只对计数变 量有限制的情况下对思路3的简化,思路 求数列前100项的和,可以使用循环语句, 由于循环次数确定,故
7、使用For语句描述,S0 For n From 1 To 100 SS+(n+1)/(n*n+2n) End For Print S,循环体中使用的语句 SS+an,引申变化1,思路 数列求第99项,可以使用循环语句,由于循环次数确定,应使用For语句描述,引申变化2,求解过程,a 1 b 1 For I From 3 To 99 c a b a b b c End For Print c,从第3项起,后移一次 为下次循环作准备,廓清疑点:输出结果,问题研究,For 语句在使用中虽然很经济,但在解决待求循环次数的问题中无法使用对于这类问题,常常使用 Do或While两种语句,尤其以使用Whil
8、e 语句居多,那么这种循环中最终的输 出结果是什么呢?,方法扫描,1 “追踪”:对每次运行时各个变量的情况进行 研究,从而判断程序是否按照设计思路运行.,常见验证算法设计的方法:,2 猜测检验:为了验证程序的合理性,可以取特 殊值对结论验证.,经典例题5,思路分析,思路1:用For语句描述,For I From 3 To Step 2 SSI End For,无法确定,思路2:用While语句描述,求解过程,S 1 I 1 While S1000000 S S I I I 2 End While,解法1,由于无法预知结果,不妨设15为满足条件的输出值,即 1 3 5 15 106 1 3 5
9、13 106,追踪 S和I两个变量变化过程,S I,1 1, 1 3, 3 5, 5 7, , 13 15, 15 17,最后修正,Print I,I I - 2,求解过程,S 1 I 1 While S1000000 I I 2 S S I End While Print I,解法2,由于无法预知结果,不妨设15为满足条件的输出值,即 1 3 5 15 106 1 3 5 13 106,追踪 S和I两个变量变化过程,I S,1 1,3 3,5 5,7 7, ,13 13,15 15,最后检验,过程对比,S 1 I 1 While S1000000 S S I I I 2 End While
10、I I -2 Print I,解法1,S 1 I 1 While S1000000 I I 2 S S I End While Print I,解法2,回顾反思,(1)基本方法: 追踪猜测检验,(2)方法比较: 解法1与解法2主要是在循环体的 语句先后顺序上不同,导致结果 不同,两种方法都比较常见,但 要检验,(3)思维误区:忽视对于结果的检验,总结提炼,知识与内容,一、聚焦重点 流程图,基本算法语句,三、廓清疑点 “输出”一定是n吗?,二、破解难点 当型和直到型两种循环结构与循环语句,总结提炼,思想与方法,(2)程序化思想 (复杂问题简单化,简单问题程序化),(1)程序模拟运行: 追踪,(3)辩证思维 (来源于细心观察、分析),再见,同步练习,同步练习,参考答案,2S0 For I From 1 To 50 SS+1/I End For Print S,参考答案,S 1 I 1 While S 3 S S + 1/I I I 1 End While I I -2 Print I,3.,4S0 For I From 1 To 50 Read x If Sx Then Sx End If End For Print S,