3循环结构[嵌套与枚举法解析法递推法].pptVIP

3循环结构[嵌套与枚举法解析法递推法].ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3循环结构[嵌套与枚举法解析法递推法]

循环结构中的嵌套 【例1】输入某次考试成绩mark,统计100分人数good。(输入-1表示结束) 【例3】实际应用: 最值问题 输入20个数,求其中最大值max和最小值min。 打擂台法 【练2】输入n个数,统计正数的个数nz和非正数的个数nfz。(n的值由键盘输入) 分析问题:结束条件是什么?首先判断结束循环使用计数法还是标志法。 设计算法:请画出流程图。循环体内嵌套什么结构? 编写程序:(略) 运行程序:上机调试与维护(略) 【例4】求1-1000中,能被3整除的数。 【例5】找出1-1000中所有能被7和11整除的数。 如循环结构中的嵌套满足下列概念则称为枚举法 根据所需解决问题的条件,把该问题所有可能的解,一一列举出来,并逐个检验出问题真正解的方法。枚举法也称为穷举法。 枚: 一个一个 举: 例举 在列举出所有可能的解时,既不能遗漏也不应重复。 枚举算法的关键步骤及注意点: 列举,用循环结构来实现,要注意循环变量、初值、终值和递增值的设置。 检验是否符合问题的要求,用分支结构实现,不同检验结果不同处理方法。 注意点:循环变量与判断对象是否是同一个变量;一般情况下没有输入;输出经常是在判断的一个分支中实现的。 有些复杂问题一时无法直接找到求解公式或数学模型,则用枚举法体现其优势,非常高的准确性和全面性. 但也有缺点:效率不高,是以消耗时间为代价的. 枚举法的结构特征: 列举 检验 【例6】若一个三位数x=100a+10b+c(a、b、c都是个位数),满足a3+b3+c3=x,则x称为水仙花数。找出所有的水仙花数。 【例7】一张单据上有一个5位数的编号,万位数是1,千位数是4,百位数是7,个位数是8,十位数已经模糊不清,只知道该5位数是57或67的倍数,找出所有满足这些条件的5位数并输出。 【例8】百鸡百钱问题:公鸡每只5元,母鸡每只3元,小鸡1元3只,现在用100元钱买100只鸡,求公鸡、母鸡、小鸡各买几只?(提示:是利用枚举法解决实际问题的例子。本例出现了双重循环,即循环嵌套,同时体现了计算机解决问题方法与数学方法的区别) 解析法:根据题目中给出的已知条件,找出已知条件与结果之间关系的数学表达式,并通过表达式的计算来实现问题求解的方法。 解析算法的关键: 寻找正确的数学表达式 解析算法的结构特征:没有特定! 可能是顺序结构,也可能是分支或循环结构,甚至是几种结构的组合,完全取决于问题本身. 【例1】输入直角三角形的两个直角边的边长值a和b,计算出斜边的边长值c。 【例2】输入三角形边长a,b,c,求三角形面积s。 【例3】求两个并联电阻的值,公式为: 【例4】一元二次方程ax2+bx+c=0(a≠0)的系数a、b、c,求方程的解。 递推法:从已知的初始条件出发,依据某种递推关系,逐次推出所要求的各中间结果及最后结果的算法。 初始条件一般是问题本身已经给定,或者是通过对问题的分析与化简后确定的。 【例1】求斐波那契(Fibonacci)数列的第n个数据项,n由键盘输入。 【例1】求斐波那契(Fibonacci)数列的第n个数据项,n由键盘输入。 规律的数学表达:Fn=Fn-1+Fn-2 (该数列的各项间的关系,用Fn表示斐波那契数列的第n项) 但这里,n ≥ 3 ,F1=1,F2=1。 Fn=Fn-1+Fn-2一般称为递推公式。 处理: 第一项和第二项分别为1。 第三项起,用递推公式计算各项的值,直至第n项为止。 由于中间各项只是为了计算后面的项,因此可以轮换赋值。 输出:第n项的值。 【例1】求斐波那契数列的第n个数据项,n由键盘输入。 【例2】猴子吃桃子问题:一只猴子采集了很多桃子。第一天吃了其中的一半,然后忍不住又吃了一个;第二天吃了剩下桃子的一半,然后忍不住又吃了一个;以后每天都这样,即吃了剩下桃子的一半,再多吃一个,到第十天时就只剩下一个桃子了。问第一天,猴子共采集了多少桃子? 【例2】猴子吃桃子问题:一只猴子采集了很多桃子。第一天吃了其中的一半,然后忍不住又吃了一个;第二天吃了剩下桃子的一半,然后忍不住又吃了一个;以后每天都这样,即吃了剩下桃子的一半,再多吃一个,到第十天时就只剩下一个桃子了。问第一天,猴子共采集了多少桃子? 【例3】求任意两个自然数的最大公约数(辗转相除法) 【例3】求任意两个自然数的最大公约数(辗转相除法) * Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 分析问题: 使用标志法:结束标志为mark=-1;所

您可能关注的文档

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档