书签 分享 收藏 举报 版权申诉 / 26
上传文档赚钱

类型循环结构嵌套与枚举法解析法递推法优质课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4232912
  • 上传时间:2022-11-21
  • 格式:PPT
  • 页数:26
  • 大小:301.25KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《循环结构嵌套与枚举法解析法递推法优质课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    循环 结构 嵌套 枚举 解析 法递推法 优质 课件
    资源描述:

    1、循环结构中的嵌套【例1】输入某次考试成绩mark,统计100分人数good。(输入-1表示结束)分析问题:使用标志法:结束标志为mark=-1;所以在循环前先输入分数mark。循环体:条件mark=100成立,人数good计数,因此要用单分支结构描述,判断结束,再输入下一个分数mark。循环条件:mark-1说明:循环体可以是顺序的,但也可以是分支的(嵌套说明:循环体可以是顺序的,但也可以是分支的(嵌套分支),同时也能是循环的(嵌套循环),即若循环体分支),同时也能是循环的(嵌套循环),即若循环体本身是循环就称为循环的嵌套。本身是循环就称为循环的嵌套。设计算法:设计算法:先用自然语言描述,再画

    2、出流程图,注意:检查流程图的规范性。编写程序:(略)运行程序:上机调试与维护(略)例举 检验【例3】实际应用:最值问题最值问题 输入20个数,求其中最大值max和最小值min。打擂台法打擂台法【练2】输入n个数,统计正数的个数nz和非正数的个数nfz。(n的值由键盘输入)分析问题:结束条件是什么?首先判断结束循环使用计数法还是标志法。设计算法:请画出流程图。循环体内嵌套什么结构?编写程序:(略)运行程序:上机调试与维护(略)例举 检验【例4】求1-1000中,能被3整除的数。【例5】找出1-1000中所有能被7和11整除的数。例举 检验基本算法基本算法 一一 :枚举法枚举法基本算法基本算法 二

    3、二 :解析法解析法基本算法基本算法 三三 :递推法递推法 如循环结构中的嵌套循环结构中的嵌套满足下列概念则称为枚举法枚举法 根据所需解决问题的条件,把该问题所有可能的解,一一列举出来,并逐个检验出问题真正解的方法。枚举法也称为穷举法。枚举法也称为穷举法。枚:一个一个 举:例举 在列举出所有可能的解时,既不能遗漏也不应重复。枚举算法的关键步骤及注意点:列举,用循环结构来实现,要注意循环变量、初值、终值和递增值的设置。检验是否符合问题的要求,用分支结构实现,不同检验结果不同处理方法。注意点:循环变量与判断对象是否是同一个变量;一般情况下没有输入;输出经常是在判断的一个分支中实现的。有些复杂问题一时

    4、无法直接找到求解公式或数学模型,则用枚举法体现其优势,非常高的准确性和全面性.但也有缺点:效率不高,是以消耗时间为代价的.枚举法的结构特征:列举 检验基本算法基本算法 一一:枚举法枚举法【例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元钱买1

    5、00只鸡,求公鸡、母鸡、小鸡各买几只?(提示:是利用枚举法解决实际问题的例子。本例出现了双重循环,即循环嵌套,同时体现了计算机解决问题方法与数学方法的区别)例举 检验 解析法:根据题目中给出的已知条件,找出已知条件与结果之间关系的数学表达式,并通过表达式的计算来实现问题求解的方法。解析算法的关键:寻找正确的数学表达式 解析算法的结构特征:没有特定!可能是顺序结构,也可能是分支或循环结构,甚至是几种结构的组合,完全取决于问题本身.基本算法基本算法 二二 :解析法解析法【例1】输入直角三角形的两个直角边的边长值a和b,计算出斜边的边长值c。【例2】输入三角形边长a,b,c,求三角形面积s。【例3】

    6、求两个并联电阻的值,公式为:21111RRR【例4】一元二次方程ax2+bx+c=0(a0)的系数a、b、c,求方程的解。递推法:从已知的初始条件出发,依据某种递推关系,逐次推出所要求的各中间结果及最后结果的算法。初始条件一般是问题本身已经给定,或者是通过对问题的分析与化简后确定的。基本算法基本算法 三三 :递推法递推法 【例1】求斐波那契(Fibonacci)数列的第n个数据项,n由键盘输入。可以用兔子繁殖的实例来说明斐波那契数列:可以用兔子繁殖的实例来说明斐波那契数列:假设兔子出生后两个月就能每月生一对小兔子,如果假设兔子出生后两个月就能每月生一对小兔子,如果1 1月份出月份出生了一对小兔

    7、子,那么每个月兔子数就是一个斐波那契数列生了一对小兔子,那么每个月兔子数就是一个斐波那契数列 月份兔子数说明1121321月份的兔子生了小兔子432月份的兔子生了小兔子553月份的兔子生了小兔子684月份的兔子生了小兔子7135月份的兔子生了小兔子8216月份的兔子生了小兔子9347月份的兔子生了小兔子10558月份的兔子生了小兔子11899月份的兔子生了小兔子月份兔子数说明1121321月份的兔子生了小兔子432月份的兔子生了小兔子553月份的兔子生了小兔子684月份的兔子生了小兔子7135月份的兔子生了小兔子8216月份的兔子生了小兔子9347月份的兔子生了小兔子10558月份的兔子生了小

    8、兔子11899月份的兔子生了小兔子1214410月份的兔子生了小兔子规律:每个月的兔子数等于上个月的兔子数加上两个月前的兔子数。规律的数学表达:Fn=Fn-1+Fn-2 (该数列的各项间的关系,用Fn表示斐波那契数列的第n项)但这里,n 3,F1=1,F2=1。Fn=Fn-1+Fn-2一般称为递推公式。处理:第一项和第二项分别为1。第三项起,用递推公式计算各项的值,直至第n项为止。由于中间各项只是为了计算后面的项,因此可以轮换赋值。输出:第n项的值。【例1】求斐波那契(Fibonacci)数列的第n个数据项,n由键盘输入。分析问题:【例1】求斐波那契数列的第n个数据项,n由键盘输入。设计算法:

    9、编写程序(略)运行和调试(略)【例2】猴子吃桃子问题:一只猴子采集了很多桃子。第一天吃了其中的一半,然后忍不住又吃了一个;第二天吃了剩下桃子的一半,然后忍不住又吃了一个;以后每天都这样,即吃了剩下桃子的一半,再多吃一个,到第十天时就只剩下一个桃子了。问第一天,猴子共采集了多少桃子?【例例2 2】猴子吃桃子问题:一只猴子采集了很多桃猴子吃桃子问题:一只猴子采集了很多桃子。第一天吃了其中的一半,然后忍不住又吃了一子。第一天吃了其中的一半,然后忍不住又吃了一个;第二天吃了剩下桃子的一半,然后忍不住又吃个;第二天吃了剩下桃子的一半,然后忍不住又吃了一个;以后每天都这样,即吃了剩下桃子的一半,了一个;以

    10、后每天都这样,即吃了剩下桃子的一半,再多吃一个,到第十天时就只剩下一个桃子了。问再多吃一个,到第十天时就只剩下一个桃子了。问第一天,猴子共采集了多少桃子?第一天,猴子共采集了多少桃子?【例2】是倒推的递推法。分析问题:规律:每天的桃子数是前一天桃子数的一半减,那么,前一天的桃子数是后一天桃子数加的倍。规律的数学表达:如果用用Ai表示第i天的桃子数,则后一天的桃子数Ai+1Ai/2-1,前一天的桃子数Ai-1(Ai+1)*2。由于本例是从第九天开始,往前逐天计算,直到第一天,因此采用的是递推公式:Ai-1(Ai+1)*2,循环变量i的计数是逐次减少,即i=i-1。【例例3】求任意两个自然数的最大

    11、公约数求任意两个自然数的最大公约数(辗转相除法)(辗转相除法)辗转相除法是一种求两个自然数的最大公约数的方法:假设对于任意两个自然数a,b,当ab时,a=q*b+r。其中,q是a除以b后得到的部分商,r是a除以b后得到的余数。那么,当r等于0时,b就是a,b的最大公约数;否则,a,b的最大公约数就等于b、r的最大公约数,这是因为a 与b的最大公约数一定是b与r的最大公约数。从而可以将b作为新的除式中的a,r作为新的除式中的b,这样反复求约数,直至r等于0,这时的b就是原先的a和b的最大公约数。例如:例如:a=144a=144,b=46b=46。a ab bq qr r4324321381383 3181813813818187 71212181812121 16 612126 62 20 0432432和和138138的最大公约数是的最大公约数是6 6。【例例3】求任意两个自然数的最求任意两个自然数的最大公约数(辗转相除法)大公约数(辗转相除法)分析问题:输入:输入两个自然数a,b的值。处理:求a除以b的余数r。当r不等于0时,用b作为新的被除数a,r作为新的除数b重复上述过程,直至r为0。输出:最后的除数的值。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:循环结构嵌套与枚举法解析法递推法优质课件.ppt
    链接地址:https://www.163wenku.com/p-4232912.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库