人教版高中数学必修三112程序框图与算法的基本逻辑结构 课件_第1页
人教版高中数学必修三112程序框图与算法的基本逻辑结构 课件_第2页
人教版高中数学必修三112程序框图与算法的基本逻辑结构 课件_第3页
人教版高中数学必修三112程序框图与算法的基本逻辑结构 课件_第4页
人教版高中数学必修三112程序框图与算法的基本逻辑结构 课件_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

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

文档简介

1.1.2程序框图与算法的基本逻辑结构

1.1.2程序框图与算法的基本逻辑结构新课引入算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表达它.例如上一节“例1.任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定”的算法可以用以下形式来表达.新课引入算法可以用自然语言来描述,但为了使算法的程序任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数作出判断。第一步:给定大于2的整数n第二步:第三步:第四步:第五步:任意给定一个大于1的整数n,试设计一个程序或步骤对n开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=0?1否是求n除以i的余数r1n是质数是否开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=判断一个正整数是否是质数的算法自然语言描述图形描述第一步:判断n是否等于2?若n=2,则n是质数,否则,执行第二步;第二步:依次从2~(n-1)检验是不是n的因数,即能整除n的数,若有这样的数,则n不是质数;若没有,则n是质数。开始输入n求n除以i的余数i的值增加1,仍用i表示i>n-1或r=0?r=0?n不是质数n是质数结束否否是是i=2判断一个正整数是否是质数的算法自然语言描述图形描述第一步:判判断一个正整数是否是质数的算法图形描述思考:1、r的作用是什么?2、i的值增加1(i=i+1)有什么作用?3、整个图形中有哪些基本的图形,各自的意义和作用是什么?开始输入n求n除以i的余数i的值增加1,仍用i表示i>n-1或r=0?r=0?n不是质数n是质数结束否否是是i=2判断一个正整数是否是质数的算法图形描述思考:1、r的作用是什程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.讲授新课1.程序框图的概念2.常见的程序框图(ANSI,美国国家标准化协会)流程线连接循环框连结点连接循环框图的两部分一、程序框图程序框图又称流程图,是一种用规定的图形、指向线及文字终端框(起止框)输入、输出框处理框(执行框)判断框表示一个算法的起始和结束表示一个算法输入和输出的信息赋值、计算判断某一条件是否成立,成立时在出口处标明“是”或“Y”,不成立时标明“否”或“N”.终端框输入、处理框判断框表示一个算法的表示一个算法输赋值、计(1)起止框:框内填写开始、结束,任何程序框图中,起止框是必不可少的;(2)输入、输出框:框内填写输入、输出的字母、符号等;(3)处理框(执行框):算法中需要的算式、公式、对变量进行赋值等要用执行框表示.(4)判断框:当算法要求在不同的情况下执行不同的运算时,需要判断框.框内填写判断条件.3.四种基本框图的及其功能用法:(1)起止框:框内填写开始、结束,任何程序框图中,起止框是必

为了使大家彼此之间能够读懂各自画出的框图,必须遵守一些共同的规则,下面对一些常用的规则作一简单的介绍.(1)使用标准的框图符号.(2)框图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数程序框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号.(4)一类判断框是“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果.4.画流程图的规则为了使大家彼此之间能够读懂各自画出的框图,必须遵守一(5)在图形符号内描述的语言要非常简练清楚.(7)一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要的文字说明.(6)起始框只允许一条流出线,终止框只允许一条流入线,输入框、输出框、处理框只有一条流入线和一条流出线,判断框有一条流入线和两条流出线,但任何时候只有一条流出线起作用.(5)在图形符号内描述的语言要非常简练清楚.(7)一个程序框开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=0?1否是求n除以i的余数r1n是质数是否开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=i=i+1i≥n或r=0?否是求n除以i的余数r输入ni=2n不是质数r=0?n是质数是否

尽管不同的算法千差万别,但它们都是由三种基本的逻辑结构构成的,这三种逻辑结构就是顺序结构、循环结构、选择结构.下面分别介绍这三种结构.

从上面的程序框图中,不难看出以下三种不同的逻辑结构.i=i+1i≥n或r=0?否是求n除以i输入ni=2n不是质二、顺序结构及框图表示1.顺序结构:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构.语句A语句B2.顺序结构的流程图

顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个处理步骤组成的,这是任何一个算法都离不开的基本结构.二、顺序结构及框图表示1.顺序结构:按照步骤依次执行的一个算3.画顺序结构程序框图时注意事项左图中,语句A和语句B是依次执行的,只有在执行完语句A指定的操作后,才能接着执行语句B所指定的操作.(1)在程序框图中,开始框和结束框不可少;(2)在算法过程中,第一步输入语句是必不可少的;(3)顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤.3.画顺序结构程序框图时注意事项左图中,语句A和语句B是依次【例1】已知一个三角形的三边边长分别为2,3,4,利用海伦—秦九韶公式设计一个算法,求出它的面积,画出算法的程序框图.开始输出S结束开始框处理框输出框结束框输入框输入a,b,c【例1】已知一个三角形的三边边长分别为2,3,4,利用海伦—【例2】求两个实数a,b

的算术平均值aver.S1:输入两个实数a,b;S2:计算c=a+b;S3:计算aver=c/2;S4:输出aver.输出aver开始输入a,baver=c/2结束解:用数学语言【例2】求两个实数a,b的算术平均值aver.S1:【例3】“鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的一个有趣而具有深远影响的题目:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何.”

请你设计一个这类问题的通用算法.并画出算法的程序框图.设有X只鸡,Y只兔.则解:鸡兔同笼,设鸡兔总头数为H,总脚数为F,求鸡兔各有多少只.算法分析如下:解方程组,得【例3】“鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的第一步:输入总头数H,

总脚数F;第二步:计算鸡的个数

x=(4H-F)/2;第三步:计算兔的个数

y=(F-2H)/2;第四步:输出x,y开始输出X,Y结束X=(4H-F)/2Y=(F-2H)/2输入H和F解:用数学语言程序框图第一步:输入总头数H,开始输出X,Y结束X=(4H-F)/第四步:计算;【例4】试描述求点(x0,y0)到直线Ax+By+C=0的距离的算法,并画出算法的程序框图.第一步:输入x0,y0,A,B,C;第二步:计算Z1=Ax0+By0+C;第三步:计算Z2=A2+B2;第五步:输出d.解:用数学语言第四步:计算;【例4】试描开始输入x0,y0,A,B,CZ1=Ax0+By0+CZ2=A2+B2输出d结束程序框图开始输入x0,y0,A,B,CZ1=Ax0+By0+CZ2=课堂小结2.顺序结构的特点1.程序框图:由于图形的描述方法既形象,又直观,设计者的思路表达得清楚易懂,便于检查修改,所以得到广泛的应用.课堂小结2.顺序结构的特点1.程序框图:由于图形的描述方法既1.程序框图的定义:又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.温故知新步骤n步骤n+13.基本逻辑结构:(1)顺序结构:由若干个依次执行的处理步骤组成的.这是任何一个算法都离不开的基本结构 。2.基本程序框图及其功能;1.程序框图的定义:又称流程图,是一种用规定的图形、指向线及已知梯形上底为2,下底为4,高为5,求其面积,设计出该问题的流程图.开始输出结束作业评析已知梯形上底为2,下底为4,高为5,求其面积,设计出该问题的三.条件结构---在一个算法中,经常会遇到一些条件的判断,算法的流向根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.两种常见形式:特征:两个步骤A,B根据条件选择一个执行特征:根据条件选择是否执行步骤A满足条件?步骤A步骤B是否满足条件?步骤A是否三.条件结构---在一个算法中,经常会遇到一些条件的判断,算任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.算法步骤:第一步:输入3个正实数a,b,c;第二步:判断a+b>c,a+c>b,b+c>a是否同时成立,若是,则能组成三角形;若否,则组不成三角形.例5任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边开始输入a,b,ca+b>c,b+c>a,c+a>b是否同时成立?是存在这样的三角形结束否不存在这样的三角形程序框图:开始输入a,b,ca+b>c,b+c>a,c+a>b是否同时算法步骤如下:设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示.例6算法步骤如下:设计一个求解一元二次方程ax2+bx+c=0的程序框图:开始输入a,b,c△=b2-4ac△≥0?△=0?否x1=p+q输出x1,x2结束否是x2=p-q输出x1=x2=p是输出“方程没有实数根”程序框图:开始输入a,b,c△=b2-4ac△≥0?△=0设计求一个任意数的绝对值的算法,并画出相应的流程图。分析:根据绝对值的定义,如果y=|x|,当x≥0,y=x;当x<0时,y=-x,所以当给出一个自变量x的值,求它所对应的y值时必需先判断x的范围,所以要用到条件结构.算法步骤:第二步,判断x≥0是否成立。若是,y=x;否则y=-x.第三步,输出y.第一步,输入x.课堂练习1.设计求一个任意数的绝对值的算法,并画出相应的流程图。分析:根是程序框图:开始输入xx≥0?输出y否结束y=xy=-x是程序框图:开始输入xx≥0?输出y否结束y=xy=-x2.某商场购物实行优惠措施,若购物金额x元在800元以上(包括800元),打8折;若购物金额x元在500元以上(包括500元),打9折,否则不打折。设计程序框图,要求输入购物金额x,能输出实际交款额。分析:实际上是求函数的值。2.某商场购物实行优惠措施,若购物金额x元在800元以上(包开始输出yx≥800?是x≥500?输入x结束y=xy=0.9xy=0.8x否否是程序框图:开始输出yx≥800?是x≥500?输入x结束y=xy=0.归纳小结

本节课学习的主要内容:3.基本逻辑结构:(1)顺序结构:由若干个依次执行的处理步骤组成的.这是任何一个算法都离不开的基本结构。(2)条件结构---算法的流向根据条件是否成立有不同的流向.满足条件?步骤A是否满足条件?步骤A步骤B是否归纳小结本节课学习的主要内容:满足条件?步四:算法的循环结构思考1:在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为循环结构,反复执行的步骤称为循环体,那么循环结构中一定包含条件结构吗?四:算法的循环结构思考1:在算法的程序框图中,由按照一定的条思考2:某些循环结构用程序框图可以表示为:循环体满足条件?是否

这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.思考2:某些循环结构用程序框图可以表示为:循环体满足条件?思考3:还有一些循环结构用程序框图可以表示为:循环体满足条件?是否这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.思考3:还有一些循环结构用程序框图可以表示为:循环体满足条件例7:计算1+2+3+…+100的值可按如下过程进行:第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.……第100步,4950+100=5050.我们用一个累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,…,100,通过重复操作,上述问题的算法如何设计?例7:计算1+2+3+…+100的值可按如下过程进行:第1步

第四步,判断i>100是否成立.若是,则输出S,结束算法;否则,返回第二步.第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第四步,判断i>100是否成立.若是,则输出S,结束算法;思考5:用直到型循环结构,上述算法的程序框图如何表示?开始i=1i>100?是输出S结束S=0i=i+1S=S+i否思考5:用直到型循环结构,上述算法的程序框图如何表示?开始i思考6:用当型循环结构,上述算法的程序框图如何表示?开始i=1结束输出S否是S=0S=S+ii≤100?i=i+1思考6:用当型循环结构,上述算法的程序框图如何表示?开始i=练习巩固1、设计一算法,求积:1×2×3×…×100,画出流程图结束输出Si=1,S=1开始S=S*ii=i+1i>100?否是思考:该流程图与前面的例中求和的流程图有何不同?练习巩固1、设计一算法,求积:1×2×3×…×100,画出流例2某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.第三步,判断所得的结果是否大于300. 若是,则输出该年的年份; 否则,返回第二步.第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值.算法分析:例2某工厂2005年的年生产总值为200万元,技术革(3)控制条件:当“a>300”时终止循环.(1)循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则t=0.05a,a=a+t,n=n+1.(2)初始值:n=2005,a=200.循环结构:(3)控制条件:当“a>300”时终止循环.(1)循环体:设开始n=2005a=200t=0.05aa=a+tn=n+1a>300?结束输出n是否程序框图:开始n=2005a=200t=0.05aa=a+tn=n+12、设计一算法输出1~1000以内能被3整除的整数结束i=i+1i<1000?输出i否是i=0开始3整除i?否是算法:S1:确定i的初始值为0;S2:判断i是否等于1000,若是则程序结束,否则进入S3;S3:使i增加1,判断i是否能被3整除,若能输出i,并返回S2;否则直接返回S22、设计一算法输出1~1000以内能被3整除的整数结束i=理论迁移

练习画出求三个不同实数中的最大值的程序框图.开始输入a,b,ca>b?a>c?是x=a是x=c否b>c?否x=b是x=c否输出x结束理论迁移练习画出求三个不同实数中的最大值的程序框图.第二步,令i=1第三步,用i除n,得到余数r第四步,判断“r=0”是否成立。若是,则i是n的因数;否则i不是n的因数。第六步,判断“i>n”是否成立。若是,输出因数,结束算法;否则,返回第三步。第一步,给定大于1的正整数n作业讲评:任意给定一个大于1的正整数n,试设计一个算法求出n的所在因数.算法:第五步,将i的值增加1,仍用i表示。第二步,令i=1第三步,用i除n,得到余数r第四步开始输入ni=1求n除以i的余数ri=i+1i≥n?是否i是n的因数结束是r=0?用程序框图来表示算法,常有三种不同的基本逻辑结构:否顺序结构条件结构直到型循环结构开始输入ni=1求n除以i的余数ri=i+1i≥n?是否i是(3)条件结构和循环结构的程序框图各有两种形式,相互对立统一.条件结构和循环结构的基本特征:小结作业(1)程序框图中必须有两个起止框,穿插输入、输出框和处理框,一定有判断框.(2)循环结构中包含条件结构,条件结构中不含循环结构.(3)条件结构和循环结构的程序框图各有两种形式,相互对立统一五.程序框图的画法五.程序框图的画法题型一:设计算法解决实际问题例题讲解例1、用程序框图表示用二分法求方程x2-2=0的近似解的算法。f(x)=x2-2输入精确度d和初始值a,b哪些步骤可以用顺序结构表示?如何表示?题型一:设计算法解决实际问题例题讲解例1、用程序框图表示用二题型一:设计算法解决问题例题讲解例1、用程序框图表示用二分法求方程x2-2=0的近似解的算法。第四步可以用什么结构表示?如何表示?f(a)f(m)<0?a=mb=m是否题型一:设计算法解决问题例题讲解例1、用程序框图表示用二分法题型一:设计算法解决问题例题讲解例1、用程序框图表示用二分法求方程x2-2=0的近似解的算法。哪几个步骤可以用循环结构表示?第三步第四步|a-b|<d或f(m)=0?输出m是否题型一:设计算法解决问题例题讲解例1、用程序框图表示用二分法根据上述分析,画出表示整个算法的程序框图。开始结束f(a)f(m)<0??a=mb=m是否|a-b|<d或f(m)=0?输出m是否f(x)=x2-2输入精确度d和初始值a,b例题讲解题型一:设计算法解决问题例1、用程序框图表示用二分法求方程x2-2=0的近似解的算法。根据上述分析,画出表示整个算法的程序框图。开始结束f(a)f题型二:程序框图的阅读与理解例题讲解开始n≤100?n=1S=0n是偶数?S=S-n×nS=S+n×nn=n+1输出S结束是是否否求12-22+32-42+…+992-1002的值.

1、这个程序框图包含了哪些逻辑结构?

2、循环结构属于哪种类型?

3、循环体执行多少次?

4、这个程序框图解决了什么实际问题?

题型二:程序框图的阅读与理解例题讲解开始n≤100?n=1S题型二:程序框图的阅读与理解例题讲解练习1:如右图,该程序图表示的算法的功能是什么?题型二:程序框图的阅读与理解例题讲解练习1:如右图,该程序图题型三:程序框图的补充例题讲解1、求1-1000内所有奇数的和。设计的算法框图如右,应该在空格位置填入什么条件?分析:空格位置是循环体部分,应考虑需要量重复执行的步骤是什么?以及步骤的执行顺序如何?应该填入:S=S+ii=i+2题型三:程序框图的补充例题讲解1、求1-1000内所有奇数的谢谢观看!谢谢观看!题型三:程序框图的补充例题讲解2、求的值。设计的算法框图如右,应该在空格位置填入什么条件?分析:空格位置判断条件,应该考虑循环的终止条件是什么?应该填入:i>10题型三:程序框图的补充例题讲解2、求1.1.2程序框图与算法的基本逻辑结构

1.1.2程序框图与算法的基本逻辑结构新课引入算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表达它.例如上一节“例1.任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定”的算法可以用以下形式来表达.新课引入算法可以用自然语言来描述,但为了使算法的程序任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数作出判断。第一步:给定大于2的整数n第二步:第三步:第四步:第五步:任意给定一个大于1的整数n,试设计一个程序或步骤对n开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=0?1否是求n除以i的余数r1n是质数是否开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=判断一个正整数是否是质数的算法自然语言描述图形描述第一步:判断n是否等于2?若n=2,则n是质数,否则,执行第二步;第二步:依次从2~(n-1)检验是不是n的因数,即能整除n的数,若有这样的数,则n不是质数;若没有,则n是质数。开始输入n求n除以i的余数i的值增加1,仍用i表示i>n-1或r=0?r=0?n不是质数n是质数结束否否是是i=2判断一个正整数是否是质数的算法自然语言描述图形描述第一步:判判断一个正整数是否是质数的算法图形描述思考:1、r的作用是什么?2、i的值增加1(i=i+1)有什么作用?3、整个图形中有哪些基本的图形,各自的意义和作用是什么?开始输入n求n除以i的余数i的值增加1,仍用i表示i>n-1或r=0?r=0?n不是质数n是质数结束否否是是i=2判断一个正整数是否是质数的算法图形描述思考:1、r的作用是什程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.讲授新课1.程序框图的概念2.常见的程序框图(ANSI,美国国家标准化协会)流程线连接循环框连结点连接循环框图的两部分一、程序框图程序框图又称流程图,是一种用规定的图形、指向线及文字终端框(起止框)输入、输出框处理框(执行框)判断框表示一个算法的起始和结束表示一个算法输入和输出的信息赋值、计算判断某一条件是否成立,成立时在出口处标明“是”或“Y”,不成立时标明“否”或“N”.终端框输入、处理框判断框表示一个算法的表示一个算法输赋值、计(1)起止框:框内填写开始、结束,任何程序框图中,起止框是必不可少的;(2)输入、输出框:框内填写输入、输出的字母、符号等;(3)处理框(执行框):算法中需要的算式、公式、对变量进行赋值等要用执行框表示.(4)判断框:当算法要求在不同的情况下执行不同的运算时,需要判断框.框内填写判断条件.3.四种基本框图的及其功能用法:(1)起止框:框内填写开始、结束,任何程序框图中,起止框是必

为了使大家彼此之间能够读懂各自画出的框图,必须遵守一些共同的规则,下面对一些常用的规则作一简单的介绍.(1)使用标准的框图符号.(2)框图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数程序框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号.(4)一类判断框是“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果.4.画流程图的规则为了使大家彼此之间能够读懂各自画出的框图,必须遵守一(5)在图形符号内描述的语言要非常简练清楚.(7)一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要的文字说明.(6)起始框只允许一条流出线,终止框只允许一条流入线,输入框、输出框、处理框只有一条流入线和一条流出线,判断框有一条流入线和两条流出线,但任何时候只有一条流出线起作用.(5)在图形符号内描述的语言要非常简练清楚.(7)一个程序框开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=0?1否是求n除以i的余数r1n是质数是否开始输入ni=2i=i+1i≥n或r=0?n不是质数结束r=i=i+1i≥n或r=0?否是求n除以i的余数r输入ni=2n不是质数r=0?n是质数是否

尽管不同的算法千差万别,但它们都是由三种基本的逻辑结构构成的,这三种逻辑结构就是顺序结构、循环结构、选择结构.下面分别介绍这三种结构.

从上面的程序框图中,不难看出以下三种不同的逻辑结构.i=i+1i≥n或r=0?否是求n除以i输入ni=2n不是质二、顺序结构及框图表示1.顺序结构:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构.语句A语句B2.顺序结构的流程图

顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个处理步骤组成的,这是任何一个算法都离不开的基本结构.二、顺序结构及框图表示1.顺序结构:按照步骤依次执行的一个算3.画顺序结构程序框图时注意事项左图中,语句A和语句B是依次执行的,只有在执行完语句A指定的操作后,才能接着执行语句B所指定的操作.(1)在程序框图中,开始框和结束框不可少;(2)在算法过程中,第一步输入语句是必不可少的;(3)顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤.3.画顺序结构程序框图时注意事项左图中,语句A和语句B是依次【例1】已知一个三角形的三边边长分别为2,3,4,利用海伦—秦九韶公式设计一个算法,求出它的面积,画出算法的程序框图.开始输出S结束开始框处理框输出框结束框输入框输入a,b,c【例1】已知一个三角形的三边边长分别为2,3,4,利用海伦—【例2】求两个实数a,b

的算术平均值aver.S1:输入两个实数a,b;S2:计算c=a+b;S3:计算aver=c/2;S4:输出aver.输出aver开始输入a,baver=c/2结束解:用数学语言【例2】求两个实数a,b的算术平均值aver.S1:【例3】“鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的一个有趣而具有深远影响的题目:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何.”

请你设计一个这类问题的通用算法.并画出算法的程序框图.设有X只鸡,Y只兔.则解:鸡兔同笼,设鸡兔总头数为H,总脚数为F,求鸡兔各有多少只.算法分析如下:解方程组,得【例3】“鸡兔同笼”是我国隋朝时期的数学著作《孙子算经》中的第一步:输入总头数H,

总脚数F;第二步:计算鸡的个数

x=(4H-F)/2;第三步:计算兔的个数

y=(F-2H)/2;第四步:输出x,y开始输出X,Y结束X=(4H-F)/2Y=(F-2H)/2输入H和F解:用数学语言程序框图第一步:输入总头数H,开始输出X,Y结束X=(4H-F)/第四步:计算;【例4】试描述求点(x0,y0)到直线Ax+By+C=0的距离的算法,并画出算法的程序框图.第一步:输入x0,y0,A,B,C;第二步:计算Z1=Ax0+By0+C;第三步:计算Z2=A2+B2;第五步:输出d.解:用数学语言第四步:计算;【例4】试描开始输入x0,y0,A,B,CZ1=Ax0+By0+CZ2=A2+B2输出d结束程序框图开始输入x0,y0,A,B,CZ1=Ax0+By0+CZ2=课堂小结2.顺序结构的特点1.程序框图:由于图形的描述方法既形象,又直观,设计者的思路表达得清楚易懂,便于检查修改,所以得到广泛的应用.课堂小结2.顺序结构的特点1.程序框图:由于图形的描述方法既1.程序框图的定义:又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.温故知新步骤n步骤n+13.基本逻辑结构:(1)顺序结构:由若干个依次执行的处理步骤组成的.这是任何一个算法都离不开的基本结构 。2.基本程序框图及其功能;1.程序框图的定义:又称流程图,是一种用规定的图形、指向线及已知梯形上底为2,下底为4,高为5,求其面积,设计出该问题的流程图.开始输出结束作业评析已知梯形上底为2,下底为4,高为5,求其面积,设计出该问题的三.条件结构---在一个算法中,经常会遇到一些条件的判断,算法的流向根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.两种常见形式:特征:两个步骤A,B根据条件选择一个执行特征:根据条件选择是否执行步骤A满足条件?步骤A步骤B是否满足条件?步骤A是否三.条件结构---在一个算法中,经常会遇到一些条件的判断,算任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.算法步骤:第一步:输入3个正实数a,b,c;第二步:判断a+b>c,a+c>b,b+c>a是否同时成立,若是,则能组成三角形;若否,则组不成三角形.例5任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边开始输入a,b,ca+b>c,b+c>a,c+a>b是否同时成立?是存在这样的三角形结束否不存在这样的三角形程序框图:开始输入a,b,ca+b>c,b+c>a,c+a>b是否同时算法步骤如下:设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示.例6算法步骤如下:设计一个求解一元二次方程ax2+bx+c=0的程序框图:开始输入a,b,c△=b2-4ac△≥0?△=0?否x1=p+q输出x1,x2结束否是x2=p-q输出x1=x2=p是输出“方程没有实数根”程序框图:开始输入a,b,c△=b2-4ac△≥0?△=0设计求一个任意数的绝对值的算法,并画出相应的流程图。分析:根据绝对值的定义,如果y=|x|,当x≥0,y=x;当x<0时,y=-x,所以当给出一个自变量x的值,求它所对应的y值时必需先判断x的范围,所以要用到条件结构.算法步骤:第二步,判断x≥0是否成立。若是,y=x;否则y=-x.第三步,输出y.第一步,输入x.课堂练习1.设计求一个任意数的绝对值的算法,并画出相应的流程图。分析:根是程序框图:开始输入xx≥0?输出y否结束y=xy=-x是程序框图:开始输入xx≥0?输出y否结束y=xy=-x2.某商场购物实行优惠措施,若购物金额x元在800元以上(包括800元),打8折;若购物金额x元在500元以上(包括500元),打9折,否则不打折。设计程序框图,要求输入购物金额x,能输出实际交款额。分析:实际上是求函数的值。2.某商场购物实行优惠措施,若购物金额x元在800元以上(包开始输出yx≥800?是x≥500?输入x结束y=xy=0.9xy=0.8x否否是程序框图:开始输出yx≥800?是x≥500?输入x结束y=xy=0.归纳小结

本节课学习的主要内容:3.基本逻辑结构:(1)顺序结构:由若干个依次执行的处理步骤组成的.这是任何一个算法都离不开的基本结构。(2)条件结构---算法的流向根据条件是否成立有不同的流向.满足条件?步骤A是否满足条件?步骤A步骤B是否归纳小结本节课学习的主要内容:满足条件?步四:算法的循环结构思考1:在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为循环结构,反复执行的步骤称为循环体,那么循环结构中一定包含条件结构吗?四:算法的循环结构思考1:在算法的程序框图中,由按照一定的条思考2:某些循环结构用程序框图可以表示为:循环体满足条件?是否

这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.思考2:某些循环结构用程序框图可以表示为:循环体满足条件?思考3:还有一些循环结构用程序框图可以表示为:循环体满足条件?是否这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.思考3:还有一些循环结构用程序框图可以表示为:循环体满足条件例7:计算1+2+3+…+100的值可按如下过程进行:第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.……第100步,4950+100=5050.我们用一个累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,…,100,通过重复操作,上述问题的算法如何设计?例7:计算1+2+3+…+100的值可按如下过程进行:第1步

第四步,判断i>100是否成立.若是,则输出S,结束算法;否则,返回第二步.第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第四步,判断i>100是否成立.若是,则输出S,结束算法;思考5:用直到型循环结构,上述算法的程序框图如何表示?开始i=1i>100?是输出S结束S=0i=i+1S=S+i否思考5:用直到型循环结构,上述算法的程序框图如何表示?开始i思考6:用当型循环结构,上述算法的程序框图如何表示?开始i=1结束输出S否是S=0S=S+ii≤100?i=i+1思考6:用当型循环结构,上述算法的程序框图如何表示?开始i=练习巩固1、设计一算法,求积:1×2×3×…×100,画出流程图结束输出Si=1,S=1开始S=S*ii=i+1i>100?否是思考:该流程图与前面的例中求和的流程图有何不同?练习巩固1、设计一算法,求积:1×2×3×…×100,画出流例2某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.第三步,判断所得的结果是否大于300. 若是,则输出该年的年份; 否则,返回第二步.第一步,输入2005年的年生产总值.第二步,计算下一年的年生产总值.算法分析:例2某工厂2005年的年生产总值为200万元,技术革(3)控制条件:当“a>300”时终止循环.(1)循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则t=0.05a,a=a+t,n=n+1.(2)初始值:n=2005,a=200.循环结构:(3)控制条件:当“a>300”时终止循环.(1)循环体:设开始n=2005a=200t=0.05aa=a+tn=n+1a>300?结束输出n是否程序框图:开始n=2005a=200t=0.05aa=a+tn=n+12、设计一算法输出1~1000以内能被3整除的整数结束i=i+1i<1000?输出i否是i=0开始3整除i?否是算法:S1:确定i的初始值为0;S2:判断i是否等于1000,若是则程序结束,否则进入S3;S3:使i增加1,判断i是否能被3整除,若能输出i,并返回S2;否则直接返回S22、设计一算法输出1~1000以内能被3整除的整数结束i=理论迁移

练习画出求三个不同实数中的最大值的程序框图.开始输入a,b

温馨提示

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

评论

0/150

提交评论