资源描述
紐绅中学紐绅中学1.1.2程序框图与算法的基本逻辑结构紐绅中学1v1.1.算法的概念是什么算法的概念是什么?v 在数学中,在数学中,按照按照一定一定规则规则解决解决某一类某一类问题问题的的明确和有限的明确和有限的步骤称为算法步骤称为算法.v一、复习回顾一、复习回顾v2 2.算法的步骤算法的步骤v 我们可以用我们可以用自然语言自然语言表述一个算法,但往表述一个算法,但往往往过程复杂,缺乏过程复杂,缺乏简洁性。简洁性。v 因此,我们有必要探究使算法的因此,我们有必要探究使算法的结构更清结构更清楚、步骤更直观也更精确楚、步骤更直观也更精确的的方法。方法。v这个想法可以实现吗?这个想法可以实现吗?1.算法的概念是什么?在数学中,按照一定规则解2v二、讲授新课二、讲授新课 v1、程序框图、程序框图 v(1)程序框图的概)程序框图的概念念 v 程程序序框框图图又又称称流流程程图图,是是一一种种用用程程序序框框、流流程线及文字说明程线及文字说明来来准确、直观地准确、直观地表示算法的图形表示算法的图形.v 程序框图是程序框图是算法的一种表现形式算法的一种表现形式,也就是说,也就是说,一个算法可以用一个算法可以用算法的步骤表示算法的步骤表示,也可以用,也可以用程序程序框图表示框图表示,所以,通常是先写出算法的步骤,然,所以,通常是先写出算法的步骤,然后再转化为对应的后再转化为对应的程序框图程序框图。二、讲授新课1、程序框图(1)程序框图的概念程3v(2)构成程序框图的)构成程序框图的图形符号及其功能图形符号及其功能图形符号图形符号名称名称功能功能v终端框终端框v(起止框起止框)v输入、输入、v输出框输出框v处理框处理框v(执行框执行框)v判断框判断框v表示一个算法的表示一个算法的起始和结束起始和结束v表示一个算法表示一个算法输入和输出输入和输出的信息的信息v赋值、计算赋值、计算v判断某一条件是否成立判断某一条件是否成立v成立时在出口处标明成立时在出口处标明“是是”或或“Y Y”,不成,不成立时标明立时标明“否否”或或“N N”.v流程线流程线v连接连接程序框程序框v连结点连结点v连接程序框图的两部分连接程序框图的两部分v 一一个完整的程序框图,个完整的程序框图,一定是一定是以起止框以起止框表示开始,表示开始,同时又以同时又以起止框表示结束起止框表示结束v 流程流程线是带有方向的箭头,用以连接程序框,直观的表线是带有方向的箭头,用以连接程序框,直观的表示算法的流程。示算法的流程。v在程序框图中,在程序框图中,任意两个程序框图之间都存在流程线;任意两个程序框图之间都存在流程线;v除起止框外,任意一个程序框都只有一条流程线除起止框外,任意一个程序框都只有一条流程线“流进流进”v输入输出框、处理框都只有一条流程线输入输出框、处理框都只有一条流程线“流出流出”v但是判断框一定是两条流程线但是判断框一定是两条流程线“流出流出”(2)构成程序框图的图形符号及其功能图形符号名称功能终端框输v例如:在例如:在1.1.1节中判断节中判断“整数整数n(n2)是否是是否是质数质数”的算法的算法v第一步第一步 给定大于给定大于2 2的整数的整数nv第二步第二步 令令i =2=2v第三步第三步 用用i 除除n得到余数得到余数rv第四步第四步 判断判断“r=0=0”是否成立是否成立.v若是,则若是,则n不是质数,算法结束;不是质数,算法结束;v否否则则,将将i的的值值增增加加1 1,仍仍用用i表表示示.v第第五五步步 判判断断“i(n-1)”是是否否成成立立.v若是,则若是,则n是质数,算法结束;是质数,算法结束;v否则,返回第三步否则,返回第三步v算法步骤:算法步骤:v程序框图程序框图:v开始开始v输入输入nvi=2v求求n除以除以i的余数的余数rvi的值增加的值增加1 1v仍用仍用i表示表示vin-1或或r=0?vr=0?v结束结束v输出输出 “n不是质数不是质数”v输出输出 “n是质数是质数”v是是v是是v否否v否否例如:在1.1.1节中判断第一步给定大于2的整数n算法步骤51、使用标准的图形符号。2、框图一般按从上到下、从左到右的方向画。3、除判断框外,除判断框外,大多数流程图符号只有一个进入 点和一个退出点。判断框是具有超过一个退出 点的唯一符号。4、判断框分两大类,一类判断框是“是”与“否”两分支的判断,而且有且仅有两个结果;另一类 是多分支判断,有几种不同的结果。5、在图形符号内描述的语言要非常简练清楚。学习这部分知识的时候,要掌握各个图形的学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,形状、作用及使用规则,画程序框图的规则如下画程序框图的规则如下:1、使用标准的图形符号。学习这部分知识的时候,要掌握6v开始开始v输入输入nvi=2v求求n除以除以i的余数的余数rvi的值增加的值增加1 1v仍用仍用i表示表示vin-1或或r=0?vr=0?v结束结束v输出输出 “n不是质数不是质数”v输出输出 “n是质数是质数”v是是v是是v否否v否否 用程序框图用程序框图表示算法时,表示算法时,算法的逻辑算法的逻辑结构结构展现得展现得非常清楚非常清楚v顺序结构顺序结构v循环结构循环结构v条件结条件结构构v算算法法的的三三种种基基本本逻逻辑辑结结构构v你能说出这三种基本逻辑结你能说出这三种基本逻辑结构的构的特点特点吗?吗?v 条件结构与循条件结构与循环结构有什么环结构有什么区区别和联系?别和联系?开始输入ni=2求n除以i的余数ri的值增加1in-1或7v2 2、算法的三种基本逻辑结构、算法的三种基本逻辑结构v顺序结构、条件结构、循环结构。顺序结构、条件结构、循环结构。v 顺序结构是由若干个顺序结构是由若干个依次执行依次执行的步骤组成的。的步骤组成的。这是任何一个算法都离不开的一种基本算法结构。这是任何一个算法都离不开的一种基本算法结构。v(1)顺序结构)顺序结构 v顺序结构可以用程序框图表示为:顺序结构可以用程序框图表示为:v步骤步骤 nv步骤步骤 n+12、算法的三种基本逻辑结构顺序结构、条件结构、循环结构。8v例例3 3 已知一个三角形的三边长分别为已知一个三角形的三边长分别为a,b,c,利用,利用海伦海伦-秦九韶公式设计一个计算三角形面积的算法,并秦九韶公式设计一个计算三角形面积的算法,并画出程序框图表示画出程序框图表示.v程序框程序框图:图:开始输入a,b,c结束pS输出S例3已知一个三角形的三边长分别为a,b,c,利用海伦9v程序框程序框图:图:v结束结束v开始开始v输入输入 rv输出输出sv练习练习1 1:任意给定一个正实数,设计一个算法任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积,并画出程序框求以这个数为半径的圆的面积,并画出程序框图表示图表示.v算法步骤算法步骤:v第一步,输入圆的半径第一步,输入圆的半径 r.v第二步,计算第二步,计算S=r2v第三步,输出第三步,输出S.v计算计算 S=r2程序框图:结束开始输入r输出s练习1:任意给定一个正实数,10v 在算法中,通过对某个条件的判断,根在算法中,通过对某个条件的判断,根据据条件是否成立选择条件是否成立选择不同流向的算法结构称为不同流向的算法结构称为条件结构。条件结构。v(2)条件结构)条件结构 v条件结构可以用程序框图表示为下面两种形式:条件结构可以用程序框图表示为下面两种形式:v满足条件满足条件?v步骤步骤A Av步骤步骤B Bv是是v否否v满足条件满足条件?v步骤步骤A Av是是v否否在算法中,通过对某个条件的判断,根据条件是否成11v例例4 4 任意给定任意给定3 3个正实数个正实数,设计一个算法设计一个算法,判断分别以判断分别以这三个数为三边边长的三角形是否存在这三个数为三边边长的三角形是否存在.画出这个算法画出这个算法的程序框图的程序框图.v算法步骤算法步骤:v第一步,输入第一步,输入3个正实数个正实数 a,b,c.v第二步,判断第二步,判断v a+bc,a+cb,v b+ca是否同时成立是否同时成立?v若是,则存在这样的三角形;若是,则存在这样的三角形;v否则,不存在这样的三角形。否则,不存在这样的三角形。v程序框程序框图:图:v结束结束v开始开始v输入输入 a,b,cv存在这样的三角形存在这样的三角形va+bc,a+cb,v b+ca是否同时是否同时v成立成立?v不存在这样的三角形不存在这样的三角形v是是v否否例4任意给定3个正实数,设计一个算法,判断分别以这三个数为12v练习练习2 2:如果学生的成绩大于或等于如果学生的成绩大于或等于6060分,则输分,则输出出“及格及格”,否则输出,否则输出“不及格不及格”.v用程序框图表示这一算法过程用程序框图表示这一算法过程.v程序框程序框图:图:v结束结束v开始开始v输入输入 Av输出输出“不及格不及格”vA100?v是v输出Sv结束v否v直到型循环结构v开始vi=1vS=0vi100?v是vS=S+ivi=i+1v否v输出Sv结束v当型循环结构程序框图:开始i=1S=0S=S+ii=i+1i100?是18v变式1:右边的程序框图输出S=?v开始vi=1vi100?v是v输出Sv结束vS=0vi=i+1vS=S+iv否v开始vi=1vi3?v是v输出Sv结束vS=0vS=S+ivi=i+1v否v9变式1:右边的程序框图输出S=?开始i=1i1019v变式2:右边的程序框图,v输出S=?v开始vi=1vi3?v是v输出Sv结束vS=0vi=i+1vS=S+i2v否v题型一:程序框图的阅读与理解题型一:程序框图的阅读与理解v14变式2:右边的程序框图,开始i=1i3?是输出S结束S=020v说明说明:(1)一般地,循环结构中都有一个计数变量和累加变量.计数变量用于记录循环次数,同时它的取值还用于判断循环是否终止,累加变量用于输出结果.累加变量和计数变量一般是同步执行的,累加一次,记数一次.v(2)循环结构分为两种-当型和直到型.v当型循环在每次执行循环体前对循环条件进行判断,当条件满足时执行循环体,不满足则停止;(当条件满足时反复执行循环体)v直到型循环在执行了一次循环体之后,对控制循环条件进行判断,当条件不满足时执行循环体,满足则停止.(反复执行循环体,直到条件满足)说明:(1)一般地,循环结构中都有一个计数变量和累加变量.计21循环结构v直到型直到型循环结构循环结构v当当型型循循环结构环结构循环结构直到型循环结构当型循环结构22v开始v输入nvi=2v求n除以i的余数rvi=i+1vin或r=0?vn不是质数v结束v是v否v是vn是质数v否vr=0?v顺序结构v用程序框图来表示算法,有三种不同的基本逻辑结构三种不同的基本逻辑结构:v条件结构v循环结构v直到型循环结构开始输入ni=2求n除以i的余数ri=i+1in或r=0?23v 例2 某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.v第三步,判断所得的结果是否大于300.若是,则输出该年的年份;否则,返回第二步.v第一步,输入2005年的年生产总值.v第二步,计算下一年的年生产总值.v算法分析:例2某工厂2005年的年生产总值为200万元,技术革24v(3)控制条件:当“a300”时终止循环.v(1)循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则t=0.05a,a=a+t,n=n+1.v(2)初始值:n=2005,a=200.v循环结构:(3)控制条件:当“a300”时终止循环.(1)循环体:设25v开始vn=2005va=200vt=0.05ava=a+tvn=n+1va300?v结束v输 出nv是v否v程序框图:v循环结构:开始n=2005a=200t=0.05aa=a+tn=n+126v开始vn=2005va=200v结束v输出nv否va300?vt=0.05av是va=a+tvn=n+1v当型循环结构程序框图开始n=2005a=200结束输出n否a300?t=0.0272.(2009浙浙江江卷卷)某某程程序序框框图图如如图图所所示示,该该程程序序运运行行后后输输出出的的k的的值是(值是()A.4B.5C.6D.7A2.(2009浙江卷)某程序框图如图所示,该程序运行后输出28v若是,则m是根;v探究:画出用二分法求方程x2-2=0的近似根(精确度为0.005)的程序框图.v算法分析:v第一步:令f(x)=x2-2.因为f(1)0,v所以设a=1,b=2.判断f(m)是否为0.若否,则继续判断f(a)f(m)大于0还是小于0.v第三步:若f(a)f(m)0,则令a=m;否则,令b=m.v第四步:判断|a-b|0?v程序框图v开始vf(x)=x2-2v输入精确度和初值a,bva=mv否vb=mv|a-b|0?程序框图开始f(x)=x2-230v1 1、掌握程序框的画法和功能。、掌握程序框的画法和功能。v2 2、了解什么是程序框图,知道学习程、了解什么是程序框图,知道学习程序序框图框图的意义。的意义。v3 3、掌握顺序结构、条件、掌握顺序结构、条件结构和循环结结构和循环结构的构的应用,应用,并能并能解决与这两种结构有关的解决与这两种结构有关的程序框图的画法。程序框图的画法。v五、课时小结五、课时小结:v六六、作业:全品、作业:全品1、掌握程序框的画法和功能。五、课时小结:六、作业:全品31
展开阅读全文