程序框图与算法的基本逻辑结构一二PPT课件_第1页
程序框图与算法的基本逻辑结构一二PPT课件_第2页
程序框图与算法的基本逻辑结构一二PPT课件_第3页
程序框图与算法的基本逻辑结构一二PPT课件_第4页
程序框图与算法的基本逻辑结构一二PPT课件_第5页
已阅读5页,还剩137页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课前复习课前复习算法算法第1页/共142页课前复习课前复习算法算法在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法. 第2页/共142页课前复习课前复习算法算法在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法. 我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁性,因此,我们有必要探究使算法表达得更加直观、准确的方法,可以通过程序框图来实现.第3页/共142页知识探究(一):算法的程序框图第4页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是否为质数”的算法。第5页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是

2、否为质数”的算法。第一步,给定一个大于2的整数n;第6页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是否为质数”的算法。第一步,给定一个大于2的整数n;第二步,令i=2;第7页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是否为质数”的算法。第一步,给定一个大于2的整数n;第二步,令i=2;第三步,用i除n,得到余数r;第8页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是否为质数”的算法。第一步,给定一个大于2的整数n;第二步,令i=2;第三步,用i除n,得到余数r;第四步,判断“r=0”是否成立.若是,则n不是质数,

3、结束算法;否则,将i的值增加1,仍用i表示;第9页/共142页知识探究(一):算法的程序框图1:复习“判断整数n(n2)是否为质数”的算法。第一步,给定一个大于2的整数n;第二步,令i=2;第三步,用i除n,得到余数r;第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示;第五步,判断“i(n-1)”是否成立,若是,则n是质数,结束算法;否则,返回第三步第10页/共142页2. 我们将上述算法如下表示:第11页/共142页2. 我们将上述算法如下表示:开始开始开始开始第12页/共142页2. 我们将上述算法如下表示:开始开始开始开始输入输入n输入输入n

4、输入输入n第13页/共142页2. 我们将上述算法如下表示:开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2第14页/共142页2. 我们将上述算法如下表示:开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数第15页/共142页2. 我们将上述算法如下表示:开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示

5、表示i的值增加的值增加1,仍用,仍用i表示表示第16页/共142页2. 我们将上述算法如下表示:开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?第17页/共142页2. 我们将上述算法如下表示:是是开始开始开始开始输入输入n输入输入n输入输入ni=

6、2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?第18页/共142页2. 我们将上述算法如下表示:是是开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用

7、i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”是是第19页/共142页2. 我们将上述算法如下表示:是是是是开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加

8、的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”结束结束结束结束结束结束第20页/共142页2. 我们将上述算法如下表示:是是是是开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in

9、n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”否否否否结束结束结束结束结束结束第21页/共142页2. 我们将上述算法如下表示:是是是是否开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?

10、i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”否否否否结束结束结束结束结束结束第22页/共142页2. 我们将上述算法如下表示:是是是是否开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=

11、0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”否否否否输出输出“n是质数是质数”输出输出“n是质数是质数”结束结束结束结束结束结束第23页/共142页2. 我们将上述算法如下表示:是是是是否开始开始开始开始输入输入n输入输入n输入输入ni=2i=2i=2求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n

12、- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”否否否否输出输出“n是质数是质数”输出输出“n是质数是质数”结束结束结束结束结束结束第24页/共142页图形符号图形符号名名 称称功功 能能终端框终端框(起止框)(起止框)输入、输出框输入、输出框处理框处理框(执行框)(执行框)判断框判断框流程线流程线表示一个算法的起始和结束表示一个算法的起始和结束表示一个算法输入和输出的表示一个算法输入和输出的信息信息赋值、计算赋值、计算判断某一条件是否成立,成立判断某一条件是否成立,成立时在出口处标明时在出口处

13、标明“是是”或或“Y”;不成立时标明不成立时标明“否否”或或“N”连接程序框,表示算法步骤的连接程序框,表示算法步骤的执行顺序执行顺序图形符号图形符号名名 称称功功 能能图形符号图形符号名名 称称功功 能能终端框终端框(起止框)(起止框)输入、输出框输入、输出框处理框处理框(执行框)(执行框)判断框判断框流程线流程线表示一个算法的起始和结束表示一个算法的起始和结束表示一个算法输入和输出的表示一个算法输入和输出的信息信息赋值、计算赋值、计算判断某一条件是否成立,成立判断某一条件是否成立,成立时在出口处标明时在出口处标明“是是”或或“Y”;不成立时标明不成立时标明“否否”或或“N”连接程序框,表示

14、算法步骤的连接程序框,表示算法步骤的执行顺序执行顺序第25页/共142页算法的基本逻辑结构:算法的基本逻辑结构:开始开始r=0?输出输出“n不是质数不是质数”求求n除以除以i的余数的余数i=2输入输入ni的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?是是是是结束结束否否否否输出输出“n是质数是质数”顺序结构顺序结构循环结构循环结构条件结构条件结构开始开始r=0?输出输出“n不是质数不是质数”求求n除以除以i的余数的余数i=2输入输入ni的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?是是是是结束结束否否否否输出输出“n是质数

15、是质数”开始开始开始开始r=0?r=0?输出输出“n不是质数不是质数”输出输出“n不是质数不是质数”求求n除以除以i的余数的余数求求n除以除以i的余数的余数求求n除以除以i的余数的余数i=2i=2i=2输入输入n输入输入n输入输入ni的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i的值增加的值增加1,仍用,仍用i表示表示i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?i in n- -1 1或或r=0r=0?是是是是是是是是结束结束结束结束结束结束否否否否否否否否输出输出“n是质数是质数”输出输出“n是质数是质数”顺序结构

16、顺序结构循环结构循环结构条件结构条件结构第26页/共142页知识探究(二):算法的顺序结构第27页/共142页知识探究(二):算法的顺序结构1: 任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构,用程序框图可以表示为:步骤步骤n步骤步骤n+1步骤步骤n步骤步骤n+1第28页/共142页()()()Sp papb pc=-例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc例1 若一个三角形的三条边长分别为a,b,c,令p=(

17、a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc第29页/共142页()()()Sp papb pc=-第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长a,b,c. 例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc第30页/共142页()()()Sp

18、papb pc=-第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长a,b,c. 第二步,计算第二步,计算 . . 2abcp+=例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc第31页/共142页()()()Sp papb pc=-第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长a,b,c. 第二步

19、,计算第二步,计算 . . 2abcp+=第三步,计算第三步,计算 . .()()()Sp pa pb pc=-例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc第32页/共142页()()()Sp papb pc=-第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长a,b,c. 第二步,计算第二步,计算 . .

20、2abcp+=第三步,计算第三步,计算 . .()()()Sp pa pb pc=-第四步,输出第四步,输出S S. . 例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc例1 若一个三角形的三条边长分别为a,b,c,令p=(a+b+c)/2,则三角形的面积试用这个公式设计一个计算三角形面积的算法步骤()()()Sp papb pc第33页/共142页3. 将上述算法的用程序框图表示第34页/共142页3. 将上述算法的用程序框图表示开始开始开始开始第35页/共142页3. 将上述算

21、法的用程序框图表示开始开始开始开始输入输入a,b,c输入输入a,b,c第36页/共142页3. 将上述算法的用程序框图表示2abcp+=开始开始开始开始输入输入a,b,c输入输入a,b,c第37页/共142页3. 将上述算法的用程序框图表示2abcp+=()()()Sp pa pb pc=-开始开始开始开始输入输入a,b,c输入输入a,b,c第38页/共142页3. 将上述算法的用程序框图表示2abcp+=()()()Sp pa pb pc=-开始开始开始开始输入输入a,b,c输入输入a,b,c输出输出S输出输出S第39页/共142页3. 将上述算法的用程序框图表示2abcp+=()()()S

22、p pa pb pc=-结束结束结束结束开始开始开始开始输入输入a,b,c输入输入a,b,c输出输出S输出输出S第40页/共142页4.练习:已知下图是“求一个正奇数的平方加5的值”的程序框图,若输出的数是30,求输入的数n的值.开始开始结束结束输入正整数输入正整数n输出输出yy=x2+5x=2n- -1开始开始结束结束输入正整数输入正整数n输出输出yy=x2+5x=2n- -1第41页/共142页知识探究(三):算法的条件结构第42页/共142页知识探究(三):算法的条件结构1.在某些问题的算法中,有些步骤只有在一定条件下才会被执行,算法的流程因条件是否成立而变化.在算法的程序框图中,由若干

23、个在一定条件下才会被执行的步骤组成的逻辑结构,称为条件结构,用程序框图可以表示为下面两种形式:第43页/共142页满足条件?满足条件?步骤步骤A步骤步骤B是是否否满足条件?满足条件?步骤步骤A是是否否满足条件?满足条件?步骤步骤A步骤步骤B是是否否满足条件?满足条件?步骤步骤A步骤步骤B是是否否满足条件?满足条件?步骤步骤A是是否否满足条件?满足条件?步骤步骤A是是否否第44页/共142页2例2: 判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?第45页/共142页2例2: 判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?第一步,输入

24、三个正实数第一步,输入三个正实数a,b,c.第46页/共142页2例2: 判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?第二步,判断第二步,判断a+bc,b+ca,c+ab是是否同时成立否同时成立. 若是,则存在这样的三角若是,则存在这样的三角形;否则,不存在这样的三角形形;否则,不存在这样的三角形.第一步,输入三个正实数第一步,输入三个正实数a,b,c.第47页/共142页3请画出这个算法的程序框图。 2例2: 判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?第二步,判断第二步,判断a+bc,b+ca,c+ab是是否同时成立否同时

25、成立. 若是,则存在这样的三角若是,则存在这样的三角形;否则,不存在这样的三角形形;否则,不存在这样的三角形.第一步,输入三个正实数第一步,输入三个正实数a,b,c.第48页/共142页开始开始开始开始第49页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,c第50页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,ca+bc,b+ca,c+ab是否同时成立?是否同时成立?a+bc,b+ca,c+ab是否同时成立?是否同时成立?第51页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,ca+bc,b+ca,c+ab是否同时成立?是否同时成立?a+bc,b+

26、ca,c+ab是否同时成立?是否同时成立?是是存在这样的三角形存在这样的三角形是是存在这样的三角形存在这样的三角形第52页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,ca+bc,b+ca,c+ab是否同时成立?是否同时成立?a+bc,b+ca,c+ab是否同时成立?是否同时成立?是是存在这样的三角形存在这样的三角形是是存在这样的三角形存在这样的三角形结束结束结束结束第53页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,ca+bc,b+ca,c+ab是否同时成立?是否同时成立?a+bc,b+ca,c+ab是否同时成立?是否同时成立?是是存在这样的三角形存在这样的

27、三角形是是存在这样的三角形存在这样的三角形结束结束结束结束否否不存在这样的三角不存在这样的三角形形否否不存在这样的三角不存在这样的三角形形第54页/共142页开始开始开始开始输入输入a,b,c输入输入a,b,ca+bc,b+ca,c+ab是否同时成立?是否同时成立?a+bc,b+ca,c+ab是否同时成立?是否同时成立?是是存在这样的三角形存在这样的三角形是是存在这样的三角形存在这样的三角形结束结束结束结束否否不存在这样的三角不存在这样的三角形形否否不存在这样的三角不存在这样的三角形形第55页/共142页3.练习题(0)(0)xxyxx 画画出出求求函函数数的的函函数数值值的的程程序序框框图图

28、. .第56页/共142页理论迁移理论迁移第57页/共142页理论迁移理论迁移例3 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示. 第58页/共142页理论迁移理论迁移算法分析算法分析:例3 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示. 第59页/共142页理论迁移理论迁移算法分析算法分析:第一步,输入三个系数a,b,c.例3 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示. 第60页/共142页理论迁移理论迁移算法分析算法分析:第一步,输入三个系数a,b,c.第二步,计算=b24ac.例3 设计一个求解一元二次方程

29、ax2+bx+c=0的算法,并画出程序框图表示. 第61页/共142页理论迁移理论迁移算法分析算法分析:第一步,输入三个系数a,b,c.第二步,计算=b24ac.例3 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示. 第三步,判断0是否成立.若是,则计算;否则,输出“方程没有实数根”,结束算法.,22bpqaa第三步,判断0是否成立.若是,则计算;否则,输出“方程没有实数根”,结束算法.,22bpqaa第62页/共142页理论迁移理论迁移算法分析算法分析:第一步,输入三个系数a,b,c.第二步,计算=b24ac.例3 设计一个求解一元二次方程ax2+bx+c=0的算法,

30、并画出程序框图表示. 第三步,判断0是否成立.若是,则计算;否则,输出“方程没有实数根”,结束算法.,22bpqaa第三步,判断0是否成立.若是,则计算;否则,输出“方程没有实数根”,结束算法.,22bpqaa第四步,判断=0是否成立.若是,则输出x1=x2=p,否则,计算x1=p+q,x2=pq,并输出x1、x2第63页/共142页程序框图程序框图:第64页/共142页程序框图程序框图:开始第65页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c第66页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac第67页

31、/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?第68页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa第69页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa第70页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa=0?=

32、0?=0?第71页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa=0?=0?=0?否否x1=p+q否否x1=p+q第72页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa=0?=0?=0?否否x1=p+q否否x1=p+qx2=p- -qx2=p- -q第73页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2b

33、pa是是2bpa2qa2qa=0?=0?=0?否否x1=p+q否否x1=p+qx2=p- -qx2=p- -q输出输出x1,x2输出输出x1,x2第74页/共142页程序框图程序框图:开始输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa=0?=0?=0?否否x1=p+q否否x1=p+qx2=p- -qx2=p- -q输出输出x1,x2输出输出x1,x2结束结束结束结束第75页/共142页程序框图程序框图:开始是输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa

34、2qa=0?=0?=0?否否x1=p+q否否x1=p+qx2=p- -qx2=p- -q输出输出x1,x2输出输出x1,x2输出输出x1=x2=p输出输出x1=x2=p结束结束结束结束第76页/共142页程序框图程序框图:开始否是输入输入a,b,c输入输入a,b,c= b2- -4ac= b2- -4ac0?0?是是2bpa是是2bpa2qa2qa=0?=0?=0?否否x1=p+q否否x1=p+qx2=p- -qx2=p- -q输出输出x1,x2输出输出x1,x2输出输出x1=x2=p输出输出x1=x2=p输出输出“方程没有方程没有实数根实数根”输出输出“方程没有方程没有实数根实数根”结束结束

35、结束结束第77页/共142页练习题0 (0)1(01)(1)xyxxx 画画出出求求函函数数的的函函数数值值的的程程序序框框图图. .第78页/共142页知识探究(四):算法的循环结构第79页/共142页知识探究(四):算法的循环结构思考1:在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为循环结构,反复执行的步骤称为循环体,那么循环结构中一定包含条件结构吗?第80页/共142页思考2:某些循环结构用程序框图可以表示为:循环体循环体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否第81页/共142页思考2:某些循环结构用程序框图可以表示为:循环体循环

36、体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?第82页/共142页思考2:某些循环结构用程序框图可以表示为:循环体循环体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.第83页/共142页思考3:还有一些循环结构用程序框图可以表示为:循环体循环体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否第84页/共142

37、页思考3:还有一些循环结构用程序框图可以表示为:循环体循环体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?第85页/共142页思考3:还有一些循环结构用程序框图可以表示为:循环体循环体满足条件?满足条件?是是否否循环体循环体满足条件?满足条件?是是否否在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?第86页/共142页第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.第100步,4950+10

38、0=5050. 思考4:计算1+2+3+100的值可按如下过程进行:第87页/共142页第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.第100步,4950+100=5050. 思考4:计算1+2+3+100的值可按如下过程进行:我们用一个累加变量我们用一个累加变量S表示每一步的计算结果,表示每一步的计算结果,即把即把S+i的结果仍记为的结果仍记为S,从而把第,从而把第i步表示为步表示为S=S+i,其中其中S的初始值为的初始值为0,i依次取依次取1,2,100,通过重复操,通过重复操作,上述问题的算法如何设计?作,上述问题的算法如何设计?第88页/共142页第

39、一步,令第一步,令i=1,S=0.第89页/共142页第一步,令第一步,令i=1,S=0.第二步,计算第二步,计算S+i,仍用,仍用S表示表示.第90页/共142页第一步,令第一步,令i=1,S=0.第二步,计算第二步,计算S+i,仍用,仍用S表示表示.第三步,计算第三步,计算i+1,仍用,仍用i表示表示.第91页/共142页第一步,令第一步,令i=1,S=0.第二步,计算第二步,计算S+i,仍用,仍用S表示表示.第三步,计算第三步,计算i+1,仍用,仍用i表示表示.第四步,判断第四步,判断i100是否成立是否成立.若是,则输若是,则输出出S,结束算法;否则,返回第二步结束算法;否则,返回第二

40、步.第92页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示?第93页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始第94页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1第95页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1S=0第96页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1S=0S=S+i第97页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1S=0 i=i+1S=S+i第98页/共142页思考5:用直到型循环结构,上

41、述算法的程序框图如何表示? 开始i=1i100?S=0 i=i+1S=S+i第99页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1i100?是输出SS=0 i=i+1S=S+i第100页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1i100?是输出S结束S=0 i=i+1S=S+i第101页/共142页思考5:用直到型循环结构,上述算法的程序框图如何表示? 开始i=1i100?是输出S结束S=0 i=i+1S=S+i否第102页/共142页思考6:用当型循环结构,上述算法的程序框图如何表示?第103页/共142页开始思考6:用当型

42、循环结构,上述算法的程序框图如何表示?第104页/共142页开始i=1思考6:用当型循环结构,上述算法的程序框图如何表示?第105页/共142页开始i=1S=0思考6:用当型循环结构,上述算法的程序框图如何表示?第106页/共142页开始i=1S=0i100?思考6:用当型循环结构,上述算法的程序框图如何表示?第107页/共142页开始i=1输出S否S=0i100?思考6:用当型循环结构,上述算法的程序框图如何表示?第108页/共142页开始i=1结束输出S否S=0i100?思考6:用当型循环结构,上述算法的程序框图如何表示?第109页/共142页开始i=1结束输出S否是S=0S=S+ii10

43、0?思考6:用当型循环结构,上述算法的程序框图如何表示?第110页/共142页开始i=1结束输出S否是S=0S=S+ii100?i=i+1思考6:用当型循环结构,上述算法的程序框图如何表示?第111页/共142页例4:某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%. 设计一个程序框图,输出预计年生产总值超过300万元的最早年份第112页/共142页算法分析算法分析:例4:某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%. 设计一个程序框图,输出预计年生产总值超过300万元的最早年份第113页/共142

44、页第一步,第一步, 输入输入2005年的年生产总值年的年生产总值.算法分析算法分析:例4:某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%. 设计一个程序框图,输出预计年生产总值超过300万元的最早年份第114页/共142页第一步,第一步, 输入输入2005年的年生产总值年的年生产总值.第二步,计算下一年的年生产总值第二步,计算下一年的年生产总值.算法分析算法分析:例4:某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%. 设计一个程序框图,输出预计年生产总值超过300万元的最早年份第115页/共142页

45、第一步,第一步, 输入输入2005年的年生产总值年的年生产总值.第二步,计算下一年的年生产总值第二步,计算下一年的年生产总值.算法分析算法分析:例4:某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%. 设计一个程序框图,输出预计年生产总值超过300万元的最早年份第三步,判断所得的结果是否大于第三步,判断所得的结果是否大于300. 若是,则若是,则输出该年的年份;否则,返回第二步输出该年的年份;否则,返回第二步.第116页/共142页循环结构循环结构:第117页/共142页循环结构循环结构:(1)循环体:设)循环体:设a为某年的年生产总值,为某年的年生产总值,t为年生产总值的年增长量,为年生产总值的年增长量,n为年份,则为年份,则t=0.05a,a=a+t,n=n+1.第118页/共142页(2)初始值:)初始值:n=2005,a=200.循环结构循环结构:(1)循环体:设)循环

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论