11算法与程序框图 ppt(谷风课资)

上传人:枫** 文档编号:569948610 上传时间:2024-07-31 格式:PPT 页数:76 大小:2.36MB
返回 下载 相关 举报
11算法与程序框图 ppt(谷风课资)_第1页
第1页 / 共76页
11算法与程序框图 ppt(谷风课资)_第2页
第2页 / 共76页
11算法与程序框图 ppt(谷风课资)_第3页
第3页 / 共76页
11算法与程序框图 ppt(谷风课资)_第4页
第4页 / 共76页
11算法与程序框图 ppt(谷风课资)_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《11算法与程序框图 ppt(谷风课资)》由会员分享,可在线阅读,更多相关《11算法与程序框图 ppt(谷风课资)(76页珍藏版)》请在金锄头文库上搜索。

1、1课资参照课资参照问题的提出问题的提出 有一个农夫带一条狼狗、一只羊和有一个农夫带一条狼狗、一只羊和一筐白菜过河。如果没有农夫看管,则一筐白菜过河。如果没有农夫看管,则狼狗要吃羊,羊要吃白菜。但是船很小,狼狗要吃羊,羊要吃白菜。但是船很小,只够农夫带一样东西过河。问农夫该如只够农夫带一样东西过河。问农夫该如何解此难题?何解此难题? 方法和过程方法和过程:1、带羊到对岸,返回;带羊到对岸,返回;2、带菜到对岸,并把羊带回;带菜到对岸,并把羊带回;3、带狼狗到对岸,返回;带狼狗到对岸,返回;4、带羊到对岸。带羊到对岸。2课资参照课资参照问题问题1请你写出解二元一次方程组的详细求解请你写出解二元一次

2、方程组的详细求解过程过程. 3课资参照课资参照解方程解方程第一步第一步, ,由(由(1)得)得第二步第二步, ,将(将(3)代入()代入(2)得)得第三步第三步, , 解(解(4)得)得第四步第四步, , 将(将(5)代入()代入(3)得)得第五步第五步, , 得到方程组的解得得到方程组的解得4课资参照课资参照解方程解方程第一步第一步, ,第二步第二步, ,第三步第三步, ,第四步第四步, ,第五步第五步, , 得到方程组的解得得到方程组的解得5课资参照课资参照广义地说:为了解决某一问题而采取的方广义地说:为了解决某一问题而采取的方法和步骤,就称之为算法。法和步骤,就称之为算法。在数学中,按照

3、一定规则解决某一类问在数学中,按照一定规则解决某一类问题的题的明确明确和和有限有限的步骤,的步骤,称为算法。现在,算法通常可以编成计算机程序,现在,算法通常可以编成计算机程序,让计算机执行并解决问题。让计算机执行并解决问题。这些程序或步这些程序或步这些程序或步这些程序或步骤必须是骤必须是骤必须是骤必须是明确明确明确明确和和和和有效有效有效有效的的的的, ,而且能够在而且能够在而且能够在而且能够在有限步有限步有限步有限步之内之内之内之内完成完成完成完成. .算法的概念算法的概念:没有软件的支持,计算机只是一堆废铁而已;没有软件的支持,计算机只是一堆废铁而已;软件的核心就是算法软件的核心就是算法软

4、件的核心就是算法软件的核心就是算法 !6课资参照课资参照算法的特征算法的特征一.确定性:每一步必须有确切的定义。二.有效性:原则上必须能够精确的运行。三.有穷性:一个算法必须保证执行有限步 后结束算法的优缺点算法的优缺点一.缺点:算法一般是机械的,有时需要进行大量重复的计算.二.优点:算法是一种通法,只要按照步骤去做,总能得到结果.7课资参照课资参照广播操图解是广播操的算法;广播操图解是广播操的算法;菜谱是做菜的算法;菜谱是做菜的算法;歌谱是一首歌曲的算法;歌谱是一首歌曲的算法;空调说明书是空调使用的算法等空调说明书是空调使用的算法等我们身边的算法我们身边的算法8课资参照课资参照算法学的发展

5、随着科学技术的日新月异,算法学也得到了前所未有的发展,现在已经发展到了各个领域.有遗传算法遗传算法, ,排序算法排序算法, ,加密算法加密算法,蚁群蚁群算法算法等,与生物学,计算机科学等有着很广泛的联系,尤其是在现在的航空航天中,更是有着更广泛的应用. 很多复杂的运算都是借助计算机和算法来完成的,在高端科学技术中有着很重要的地位.9课资参照课资参照科学家王小云主导破解两科学家王小云主导破解两大密码算法获百万大奖大密码算法获百万大奖 10课资参照课资参照杨振宁教授杨振宁教授为获得为获得“求求是杰出科学是杰出科学家奖家奖”的山的山东大学特聘东大学特聘教授王小云教授王小云颁发了获奖颁发了获奖证书和奖

6、金证书和奖金100100万元人民万元人民币,表彰其币,表彰其密码学领域密码学领域的杰出成就。的杰出成就。 11课资参照课资参照 应用举例应用举例应用举例应用举例 例例1.(1).(1)设计一个算法判断设计一个算法判断7 7是否为质数是否为质数. .第一步第一步, 用用2除除7,得到余数得到余数1.因为余数不为因为余数不为0, 所以所以2不能整除不能整除7.第二步第二步, 用用3除除7,得到余数得到余数1.因为余数不为因为余数不为0, 所以所以3不能整除不能整除7.第三步第三步, 用用4除除7,得到余数得到余数3.因为余数不为因为余数不为0, 所以所以4不能整除不能整除7.第四步第四步, 用用5

7、除除7,得到余数得到余数2.因为余数不为因为余数不为0, 所以所以5不能整除不能整除7.第五步第五步, 用用6除除7,得到余数得到余数1.因为余数不为因为余数不为0, 所以所以6不能整除不能整除7.因此,因此,7是质数是质数.12课资参照课资参照 应用举例应用举例应用举例应用举例 例例1.(2).(2)设计一个算法判断设计一个算法判断3535是否为质数是否为质数. .第一步第一步, 用用2除除35,得到余数得到余数1.因为余数不为因为余数不为0, 所以所以2不能整除不能整除35.第二步第二步, 用用3除除35,得到余数得到余数2.因为余数不为因为余数不为0, 所以所以3不能整除不能整除35.第

8、三步第三步, 用用4除除35,得到余数得到余数3.因为余数不为因为余数不为0, 所以所以4不能整除不能整除7.第四步第四步, 用用5除除35,得到余数得到余数0.因为余数为因为余数为0, 所以所以5能整除能整除35.因此,因此,35不是质数不是质数.13课资参照课资参照任意给定一个大于任意给定一个大于1 1的整数的整数n, ,试设计一个程序或步骤试设计一个程序或步骤对对n是否为质数做出判定是否为质数做出判定. .第一步:判断第一步:判断n是否等于是否等于2.2.若若n=2=2,则,则n是质数;是质数;若若n2 2,则执行第二步,则执行第二步. .第二步第二步: :依次从依次从2 2(n1)检验

9、是不是)检验是不是n的因的因数,即整除数,即整除n的数的数, ,若有这样的数,则若有这样的数,则n不是质不是质数;若没有这样的数,则数;若没有这样的数,则n是质数是质数. .这是判断一个大于这是判断一个大于1 1的整数的整数n是否为质数的是否为质数的最基本算法最基本算法. .用语言描述一个算法用语言描述一个算法,最便捷的方式就是按最便捷的方式就是按解决问题的步骤进行描述解决问题的步骤进行描述.每一步做一件事每一步做一件事情情.14课资参照课资参照 应用举例应用举例应用举例应用举例 例例2. .用二分法设计一个求方程用二分法设计一个求方程的近似根的算法的近似根的算法. .15课资参照课资参照 探

10、究解决探究解决探究解决探究解决 对于区间对于区间a,b 上连续不断、且上连续不断、且f(a)f(b)0的函数的函数y=f(x),通过不断地通过不断地把函数把函数f(x)的零点所在的区间一分的零点所在的区间一分为二,使区间的两个端点逐步逼近为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法零点,进而得到零点近似值的方法叫做叫做二分法二分法.16课资参照课资参照 解决问题解决问题解决问题解决问题 第四步第四步, 若若f(a) f(m) 7时时)22课资参照课资参照解解:y与与x之间的函数关系为之间的函数关系为:(当当0x7时时)(当当x7时时)求该函数值的算法分析求该函数值的算法分析:第

11、一步第一步:输入每月用水量输入每月用水量x;第二步第二步:判断判断x是否不超过是否不超过7.若是若是,则则y=1.2x;若否若否,则则y=1.9x-4.9.第三步第三步:输出应交纳的水费输出应交纳的水费y.23课资参照课资参照计算机解决任何问题都要依赖计算机解决任何问题都要依赖于算法于算法.只有将解决问题的过程分只有将解决问题的过程分解为解为若干个明确的步骤若干个明确的步骤,即即算法算法,并并用用计算机能够接受的计算机能够接受的“语言语言”准准确地描述出来确地描述出来,计算机才能够解决计算机才能够解决问题问题.24课资参照课资参照1.1.2 程序框图程序框图 25课资参照课资参照问题提出问题提

12、出1.1.算法的含义是什么?算法的含义是什么? 在数学中,按照一定规则解决某一在数学中,按照一定规则解决某一类问题的明确和有限的步骤称为算法类问题的明确和有限的步骤称为算法. . 2.2.算法是由一系列明确和有限的计算步算法是由一系列明确和有限的计算步骤组成的,我们可以用自然语言表述一骤组成的,我们可以用自然语言表述一个算法,但往往过程复杂,缺乏简洁性,个算法,但往往过程复杂,缺乏简洁性,因此,我们有必要探究使算法表达得更因此,我们有必要探究使算法表达得更加直观、准确的方法,这个想法可以通加直观、准确的方法,这个想法可以通过程序框图来实现过程序框图来实现. .26课资参照课资参照知识探究(一)

13、:算法的程序框图知识探究(一):算法的程序框图思考思考1:1:“判断整数判断整数n n(n n2 2)是否为质数)是否为质数”的的算法步骤如何?算法步骤如何?第一步第一步,给定一个大于,给定一个大于2 2的整数的整数n n; 第二步第二步,令,令i=2i=2; 第三步第三步,用,用i i除除n n,得到余数,得到余数r r; 第四步第四步,判断,判断“r=0r=0”是否成立是否成立. .若是,则若是,则n n 不是质数,结束算法;否则,将不是质数,结束算法;否则,将i i 的值增加的值增加1 1,仍用,仍用i i表示;表示; 第五步第五步,判断,判断“i i(n-1)(n-1)”是否成立,若是

14、,是否成立,若是, 则则n n是质数,结束算法;否则,返回是质数,结束算法;否则,返回 第三步第三步. . 27课资参照课资参照开始开始输入输入ni=2求求n除以除以i的余数的余数ri的值增加的值增加1仍用仍用i表示表示in或或r=0?n不是质数不是质数结束结束是是否否是是n是质数是质数否否r=0? i=i+1 思考思考2 :为了使算法为了使算法的程序或步的程序或步骤表达得更骤表达得更为直观为直观,我们我们更经常地用更经常地用图形方式图形方式来来表示它表示它.28课资参照课资参照程序框图程序框图又称又称流程图流程图,是一种用规定的图形、是一种用规定的图形、指向线及文字说明来准确、直观地表示算法

15、的指向线及文字说明来准确、直观地表示算法的图形图形.通常通常,程序框图由程序框图由程序框程序框和和流程线流程线组成组成.一个或几个程序框的组合一个或几个程序框的组合表示算法中的表示算法中的一个步骤一个步骤;流程线流程线是是方向箭头方向箭头,按照算法进行的顺序将程序按照算法进行的顺序将程序框连接起来框连接起来.29课资参照课资参照思考思考3:基本的程序框和它们各自表示的功能?基本的程序框和它们各自表示的功能?图形符号图形符号名称名称功能功能终端框终端框(起止框起止框)表示一个算法的起始表示一个算法的起始和结束和结束输入、输输入、输出框出框表示一个算法输入和表示一个算法输入和输出的信息输出的信息处

16、理框处理框(执行框执行框)判断某一条件是否成立判断某一条件是否成立,成立成立时在出口处标明时在出口处标明“是是”或或“Y”;不;不”成立时标明成立时标明“否否”或或“N”.判断框判断框赋值、计算赋值、计算流程线流程线连接程序框连接程序框连接点连接点连接程序框图的两部分连接程序框图的两部分30课资参照课资参照开始开始输入输入ni=2求求n除以除以i的余数的余数ri的值增加的值增加1仍用仍用i表示表示in或或r=0?n不是质数不是质数结束结束是是否否是是n是质数是质数否否r=0?设设n是一个大是一个大于于2的整数的整数.一般用一般用i=i+1表示表示. i=i+1说明说明:i表示从表示从2(n-1

17、)的所有正整数的所有正整数,用以用以判断例判断例1步骤步骤2是否终是否终止止,i是一个计数变量是一个计数变量,有了这个变量有了这个变量,算法算法才能依次执行才能依次执行.逐步逐步考察从考察从2(n-1)的所的所有正整数中是否有有正整数中是否有n的因数存在的因数存在.31课资参照课资参照思考思考4:通过上述算法的两种不同表达方式的比:通过上述算法的两种不同表达方式的比较较,你觉得用程序框图来表达算法有哪些特点你觉得用程序框图来表达算法有哪些特点?用程序框图表示的算法更加简练用程序框图表示的算法更加简练,直观直观,流向清楚流向清楚.32课资参照课资参照开始开始输入输入ni=2求求n除以除以i的余数

18、的余数ri=i+1in或或r=0?n不是质数不是质数结束结束是是否否是是n是质数是质数否否r=0?顺序结构顺序结构思考思考:5:用程序框图来表示:用程序框图来表示算法,有几种不同的基本逻算法,有几种不同的基本逻辑结构?辑结构?条件结构条件结构循环结构循环结构33课资参照课资参照知识探究(二):算法的顺序结构知识探究(二):算法的顺序结构思考思考1:1:任何一个算法各步骤之间都有明确的任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为次执行的步骤组成的逻辑结构,称为顺序结顺序结构构,用程序框图可以表示为:,

19、用程序框图可以表示为:步骤步骤n步骤步骤n+1在顺序结构中可能在顺序结构中可能会用到哪几种程序会用到哪几种程序框和流程线?框和流程线??34课资参照课资参照思考思考2:2:若一个三角形的三条边长分别为若一个三角形的三条边长分别为a a,b b,c c,令,令 ,则三角形的面积,则三角形的面积 . .你能利用这个公式你能利用这个公式设计一个计算三角形面积的算法步骤吗?设计一个计算三角形面积的算法步骤吗?第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长 a a,b b,c.c. 第二步,计算第二步,计算 . . 第三步,计算第三步,计算 . .第四步,输出第四步,输出S. S. 35课

20、资参照课资参照思考思考3:3:上述算法的程序框图如何表示?上述算法的程序框图如何表示?开始开始结束结束输出输出S输入输入a,b,c36课资参照课资参照 例例1 1 一个笼子里装有鸡和兔共一个笼子里装有鸡和兔共m m只,且只,且鸡和兔共鸡和兔共n n只脚,设计一个计算鸡和兔各有多只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示少只的算法,并画出程序框图表示. .顺序结构顺序结构-理论迁移理论迁移算法分析:算法分析: 第一步,输入第一步,输入m m,n.n.第二步,计算鸡的只数第二步,计算鸡的只数 . .第三步,计算兔的只数第三步,计算兔的只数y=m-x.y=m-x.第四步,输出第四步

21、,输出x x,y.y.37课资参照课资参照开始开始结束结束输出输出x,y输入输入m,ny y= m-xm-x程序框图:程序框图: 38课资参照课资参照 例例2 2 已知下图是已知下图是“求一个正奇数的平方求一个正奇数的平方加加5 5的值的值”的程序框图,若输出的数是的程序框图,若输出的数是3030,求,求输入的数输入的数n n的值的值. .开始开始结束结束输入正整数输入正整数n输出输出yy=x2+5x=2n- -139课资参照课资参照练习:练习:1.就(就(1)、()、(2)两种逻辑结构,说出各自的算法功能)两种逻辑结构,说出各自的算法功能开始输入a,b结束sum=a+b输出sum开始输入a,

22、b输出结束(1)(2)答案:答案:(1)求直角三角形斜边长;)求直角三角形斜边长;(2)求两个数的和)求两个数的和40课资参照课资参照2.已知梯形上底为已知梯形上底为2,下底为,下底为4,高为,高为5,求其面积,求其面积,设计出该问题的流程图设计出该问题的流程图开始输出结束41课资参照课资参照顺序结构的程序框图的基本特征:顺序结构的程序框图的基本特征:顺序结构知识小结顺序结构知识小结(2 2)各程序框从上到下用流程线依次)各程序框从上到下用流程线依次连接连接. .(1 1)必须有两个起止框,穿插输入、输)必须有两个起止框,穿插输入、输出框和处理框,没有判断框出框和处理框,没有判断框. .(3

23、3)处理框按计算机执行顺序沿流程线)处理框按计算机执行顺序沿流程线依次排列依次排列. .42课资参照课资参照条件结构r=0?N不是质数n是质数是是否否知识探究(三):算法的条件结构知识探究(三):算法的条件结构43课资参照课资参照条件结构条件结构-在一个算法中在一个算法中,经常会遇到一些经常会遇到一些条件的判断条件的判断,算法的流向根据条件是否成立算法的流向根据条件是否成立有不同的流向有不同的流向.条件结构就是处理这种过程条件结构就是处理这种过程的结构的结构.满足条件?是是否否步骤A步骤B满足条件?是是否否步骤A44课资参照课资参照课本例课本例4:任意给定任意给定3个正实数个正实数,设计一个算

24、法设计一个算法,判判断分别以这断分别以这3个数为三边边长的三角形是否存在个数为三边边长的三角形是否存在.画出这个算法的程序框图画出这个算法的程序框图.算法分析算法分析:第一步第一步:输入输入3个正实数个正实数a,b,c;第二步第二步:判断判断a+bc,a+cb,b+ca是否同时成立是否同时成立,若是若是,则能组成三角形则能组成三角形;若否若否,则组不成三角形则组不成三角形.45课资参照课资参照程序框图程序框图:开始开始输入输入a,b,ca+bc,a+cb,b+ca是否是否同时成立同时成立?是是存在这样的存在这样的三角形三角形不存在这样的不存在这样的三角形三角形否否结束结束46课资参照课资参照练

25、习1城区一中学生数学模块学分认定由模块成绩决定,模块成绩由模块考试成绩和平时成绩构成,各占50%,若模块成绩大于或等于60分,获得2学分,否则不能获得学分(为0分),设计一算法,通过考试成绩和平时成绩计算学分,并画出程序框图47课资参照课资参照开始结束输入a,bS=60?学分=2学分=0否是S=(a+b)*0.5输出学分48课资参照课资参照算法步骤如下(课本例5):49课资参照课资参照开始输入a,b,cX1=p+qX2=p-q输出x1,x2输出“方程没有实数根”输出p结束否是否是50课资参照课资参照是是练习练习2:设计一个求任意数的绝对值的算法设计一个求任意数的绝对值的算法,并画并画出程序框图

26、出程序框图.算法分析算法分析:第一步第一步:输入数输入数x;第二步第二步:判断判断x0是否是否成立成立?若是若是,则则|x|=x;若否若否,则则|x|=-x.程序框图程序框图:开始开始输入输入xx0?输出输出x否否输出输出-x结束结束51课资参照课资参照练习练习3:画程序画程序框图框图,对于输入的对于输入的x值值,输出相应的输出相应的y值值.开始开始程序框图程序框图x0?是是y=0否否0x7时时)53课资参照课资参照解解:y与与x之间的函数关系为之间的函数关系为:(当当0x7时时)(当当x7时时)算法分析算法分析:第一步第一步:输入每月用水量输入每月用水量x;第二步第二步:判断判断x是否不超是

27、否不超过过7.若是若是,则则y=1.2x;若若否否,则则y=1.9x-4.9.第三步第三步:输出应交纳的水输出应交纳的水费费y.开始开始输入输入x03?y=x-2输出yy=4-x否否是是开始max=a输入bmaxb?输出max结束max=b是是否否2.此为某一函数的求值程序此为某一函数的求值程序图,则满足该流程图的函数图,则满足该流程图的函数解析式为(解析式为( )(不能写成分)(不能写成分段函数)段函数)3.求函数的值的算法流程图开始输入xX2?y=2输出y结束否否是是答案答案:1.求两个数中的最大值求两个数中的最大值.答案答案:2. y=|x-3|+1.55课资参照课资参照作业作业:P20

28、页页A组组1;(画出程序框图画出程序框图) 作业: 设计房租收费的算法,其要求是:住房面积80平方米以内,每平方米收费3元,住房面积超过80平方米时,超过部分,每平方米收费5元.输入住房面积数,输出应付的房租.56课资参照课资参照作业: 设计房租收费的算法,其要求是:住房面积80平方米以内,每平方米收费3元,住房面积超过80平方米时,超过部分,每平方米收费5元.输入住房面积数,输出应付的房租.算法分析:第一步:输入住房面积输入住房面积S第二步:根据面积选根据面积选择计费方式:如果择计费方式:如果S小于或等于小于或等于80,则租,则租金为金为M=s3,否则为,否则为M=240+(S-80)5第三

29、步:输出房租输出房租M的值的值。开始结束输入面积S输出租金MS=80M=3*SM=240+5*(S-8)否是57课资参照课资参照课本课本50页页1(1)课堂讲评课堂讲评开始开始程序框图程序框图x0?是是y=0否否0x1?是是y=1否否y=x输出输出y结束结束输入输入x上交作业上交作业:课本课本P50页页A组组1(2), (画画出程序框图出程序框图) 58课资参照课资参照P:50页页A组组T1(2)开始开始程序框图程序框图xn-1,或r=0?否是求n除以i的余数r 循环结构循环结构-在一些算法中在一些算法中,也经常会出现从也经常会出现从某处开始某处开始,按照一定条件按照一定条件,反复执行某一步反

30、复执行某一步骤的情况骤的情况,这就是循环结构这就是循环结构.反复执行的步反复执行的步骤称为循环体骤称为循环体.知识探究(四):算法的循环结构知识探究(四):算法的循环结构60课资参照课资参照引例:设计一算法,求和:1+2+3+100第一步:确定首数确定首数a a,尾数,尾数b b,项数,项数n n;第二步:利用公式利用公式“总和总和=(=(首数首数+ +尾数)尾数)项数项数/2/2”求和;求和;第三步:输出求和结果。输出求和结果。算法1:开始结束输入a,b,nS=(a+b)*n/2输出S61课资参照课资参照课本例课本例6:设计一个计算设计一个计算1+2+3+100的值的值的算法的算法,并画出程

31、序框图并画出程序框图.算法分析算法分析:第第1步步:0+1=1; 第第2步步:1+2=3;第第3步步:3+3=6; 第第4步步:6+4=10第第100步步:4950+100=5050.第第(i-1)步的结果步的结果+i=第第i步的结果步的结果各步骤有共同的结构各步骤有共同的结构:为了方便有效地表示上述过程为了方便有效地表示上述过程,我我们引进一个们引进一个变量变量S来表示每一步来表示每一步的计算结果的计算结果,从而把第从而把第i步表示为步表示为 S=S+iS=0S=S + 1S=S + 2S=S + 3S=S + 10062课资参照课资参照求和:1+2+3+100S=S+ i怎么用程序框图表示

32、呢?思考1:i有什么作用?S呢?i = i + 1S=S + iS=0S=S + 1S=S + 2S=S + 3S=S + 100累加变量累加变量S来表示每一步来表示每一步的计算结果的计算结果,从而把第从而把第i步步表示为表示为 S=S+iS的初始值为的初始值为0,i依次取依次取1,2,100,由于由于i同时记录了循环的次数同时记录了循环的次数,所所以以i称为计数变量称为计数变量.63课资参照课资参照i = i + 1S=S + i解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。试分析两种流程的异同点直到型结构当型结构S = S + ii=i+ 1是否S= S

33、+ ii=i + 1否是i100?请填上判断的条件。64课资参照课资参照程序框图程序框图:开始开始i=1S=0S=S+ii=i+1i100?是是输出输出S结束结束否否直到直到型循型循环结环结构构开始开始i=1S=0i100?是是S=S+ii=i+1否否输出输出S结束结束当型循环当型循环结构结构65课资参照课资参照思考2:若将“i=1”改成“i=0”,则程序框图怎么改?开始结束输出SS=0否是i=0S=S + ii = i + 1i=100?开始结束输出Sum否是S=0i=0S=S + ii = i + 1i100?直到直到型循型循环结环结构构当型循环当型循环结构结构66课资参照课资参照结束S=

34、 S + ii=i + 1i=100?输出S否是i=1,S=0开始步骤A步骤B 思考:3:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改? 答:达不到预期结果;当达不到预期结果;当i = 100时,没有退出循环,时,没有退出循环,i的值为的值为101加加入到入到S中;修改的方法是将判断条件中;修改的方法是将判断条件改为改为i=n?否是输入n改进上面的算法,表示改进上面的算法,表示输出输出1,1+2,1+2+3, ,1+2+3+(n-1)+n( ) 的的过程。过程。70课资参照课资参照练习巩固1、设计一算法,求积:123100,画出流程图结束输

35、出Ai=0,A=1开始i = i + 1A=A*ii=100?否是思考:该流程图与前面的课本例6中求和的流程图有何不同?71课资参照课资参照课本例课本例7: 某工厂某工厂2005年的年生产总值为年的年生产总值为200万,万,技术革新以后每年的年生产总值比上一年增长技术革新以后每年的年生产总值比上一年增长5。设计一个程序框图,输出预计年生产总值。设计一个程序框图,输出预计年生产总值超过超过300万元的最早年份。万元的最早年份。算法分析:算法分析:第一步,输入第一步,输入2005年的年生产总值。年的年生产总值。第二步,计算下一年的年生产总值。第二步,计算下一年的年生产总值。第三步,判断所得的结果是

36、否大于第三步,判断所得的结果是否大于300.若是,若是,则输出该年的年份;否则,返回第二步则输出该年的年份;否则,返回第二步72课资参照课资参照 由于“第二步”是重复操作的步骤,所以可以用循环结构来实现。我们按照“确定循环体” “初始化变量” “设定循环控制条件”的顺序来构造循环结构。(2)初始化变量:若将)初始化变量:若将2005年的年生产总值堪称计算的年的年生产总值堪称计算的起始点,则起始点,则n的初始值为的初始值为2005,a的初始值为的初始值为200.(3)设定循环控制条件:当)设定循环控制条件:当“年生产总值超过年生产总值超过300万元万元”时终止循环,所以可通过判断时终止循环,所以

37、可通过判断“a300”是否成立来控制循是否成立来控制循环。环。(1)确定循环体:设)确定循环体:设a为某年的年生产总值,为某年的年生产总值,t为年生为年生产总值的年增长量,产总值的年增长量,n为年份,则循环体为为年份,则循环体为73课资参照课资参照程序框图程序框图:开始开始n=2005a=200t=0.05an=n+1a300?是是输出输出n结束结束否否a=a+t74课资参照课资参照小结1、循环结构的特点2、循环结构的框图表示3、循环结构有注意的问题避免死循环的出现,设置好进入(结束)循环体的条件。当型和直到型重复同一个处理过程75课资参照课资参照作业作业:课本课本P20页页A组组2;76课资参照课资参照

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号