(推荐)1.1.2程序框图与算法的基本逻辑结构习题.ppt_第1页
(推荐)1.1.2程序框图与算法的基本逻辑结构习题.ppt_第2页
(推荐)1.1.2程序框图与算法的基本逻辑结构习题.ppt_第3页
(推荐)1.1.2程序框图与算法的基本逻辑结构习题.ppt_第4页
(推荐)1.1.2程序框图与算法的基本逻辑结构习题.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

1、(推荐推荐)1.1.2程序框图与算法的基本逻辑结构习题程序框图与算法的基本逻辑结构习题.ppt21.1.21.1.2程序框图程序框图与算法的基本逻辑结构与算法的基本逻辑结构3判断一个正整数判断一个正整数n是否是质数的算法是否是质数的算法自然语言描述自然语言描述图形描述图形描述结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?第一步:给定大于第一步:给定大于2 2的整数的整数n n第二步第二步: :令令i=2i=2第三步第三步: :用用i i除除n,n,得到余数得到余数r r第四步第四步: :判断判断r

2、=0r=0是否成立。是否成立。若是,则若是,则n n不是质数结束算法。不是质数结束算法。否则,将否则,将i i的值加的值加1 1,仍用,仍用i i表示表示第五步第五步: :判断判断in-1in-1是否成立。是否成立。若是,则若是,则n n是质数,结束算法。是质数,结束算法。否则返回第三步否则返回第三步4上述表示算法的图形称为算法的上述表示算法的图形称为算法的程序框程序框图图又称又称流程图,流程图,其中的多边形叫做其中的多边形叫做程序程序框,框,带方向箭头的线叫做带方向箭头的线叫做流程线流程线,你能,你能指出程序框图的含义吗?指出程序框图的含义吗? 用程序框、流程线及文字说明来表示用程序框、流程

3、线及文字说明来表示算法的图形算法的图形. 5二、新课二、新课 一一、程序框图、程序框图 (1)程序框图的概念)程序框图的概念 程序框图又称流程图,程序框图又称流程图,是一种用规定的是一种用规定的程序框、程序框、流程线及文字说明流程线及文字说明来准确、来准确、直观地表示算法的图形。直观地表示算法的图形。结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?6一个程序框图包括以下几部分:一个程序框图包括以下几部分:表示相应操作的程序框;表示相应操作的程序框;带箭头的流程线;带箭头的流程线;程序框外必要的文字说

4、明。程序框外必要的文字说明。结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?不同的程序框有不同的含义不同的程序框有不同的含义7结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?终端框(起止框),终端框(起止框),表示一个算法的起始表示一个算法的起始和结束和结束8结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?输入

5、、输出框输入、输出框表示一个算法输入和表示一个算法输入和输出的信息输出的信息9结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?处理框(执行框)处理框(执行框)赋值、计算赋值、计算10结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?判断框判断框判断某一条件是否成立,成判断某一条件是否成立,成立时在出口处标明立时在出口处标明“是是”;不成立时标明不成立时标明“否否”11结束结束开始开始输入输入ni=2n除以除

6、以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?流程线流程线连接点连接点图形符号图形符号名名 称称功功 能能终端框(起止框)终端框(起止框)一个算法的起始和结束一个算法的起始和结束输入、输出框输入、输出框一个算法输入和输出的信息一个算法输入和输出的信息处理框(执行框)处理框(执行框)赋值、计算赋值、计算判断框判断框判断某一条件是否成立,出判断某一条件是否成立,出口成立标口成立标“是是”不成立标不成立标“否否”流程线流程线连接程序框连接程序框连接点连接点连接程序框图的两部分连接程序框图的两部分或或构成程序框的图形符号及其作用构成程序框的图形

7、符号及其作用13画程序框图的规则如下:画程序框图的规则如下:1 1、使用标准的图形符号。、使用标准的图形符号。2 2、框图一般按、框图一般按从上到下、从左到右从上到下、从左到右的方向画。的方向画。3 3、除判断框外,大多数流程图符号只有一个进入、除判断框外,大多数流程图符号只有一个进入 点和一个退出点。点和一个退出点。判断框是具有超过一个退出判断框是具有超过一个退出 点的唯一符号。点的唯一符号。4 4、判断框分两大类,一类判断框是、判断框分两大类,一类判断框是“是是”与与“否否”两两分支的判断,而且分支的判断,而且有且仅有两个结果有且仅有两个结果;另一类是多分;另一类是多分支判断,有几种不同的

8、结果。支判断,有几种不同的结果。5 5、在图形符号内描述的语言要非常简练、清楚。、在图形符号内描述的语言要非常简练、清楚。6 6、如果一个程序框图由于纸面等原因需要分开画,要、如果一个程序框图由于纸面等原因需要分开画,要在断开处画上在断开处画上连接点连接点,并标出连接的号码,并标出连接的号码,14结束结束开始开始输入输入ni=2n除以除以i的余数的余数ri=i+1in-1或或r=0?n不是质数不是质数n是质数是质数否否是是是是否否r=0?顺序结构顺序结构循环结构循环结构条件结构条件结构算法的基本逻算法的基本逻辑结构辑结构-顺序顺序结构结构16思考思考1:1:任何一个算法各步骤之间都有明确的任何

9、一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结次执行的步骤组成的逻辑结构,称为顺序结构构,用程序框图可以表示为:,用程序框图可以表示为:步骤步骤n步骤步骤n+1在顺序结构中可能在顺序结构中可能会用到哪几种程序会用到哪几种程序框和流程线?框和流程线?? ?17例例1(1)(1)写出图中程序框图的运行结果:写出图中程序框图的运行结果: 开始开始输入输入a,ba2b4sa/bb/a 输出输出s结束结束图中输出图中输出s ;5/218(2)(2)写出下列算法的功能。写出下列算法的功能。 开始开始输入输入a,

10、bda2b2c输出输出c结束结束d左图算法的功能左图算法的功能是是 ; 求两数平方和的算术平方根求两数平方和的算术平方根19例例2 设计一算法:设计一算法:输入圆的半径输入圆的半径, ,输出圆的面积,并画出流程图输出圆的面积,并画出流程图算法分析:算法分析:第一步:输入圆的半径第一步:输入圆的半径第二步:利用公式第二步:利用公式“圆的面圆的面积积=圆周率圆周率(半径的平方)(半径的平方)”计算圆的面积;计算圆的面积;第三步:输出圆的面积。第三步:输出圆的面积。开始开始结束结束输入半径输入半径r计算计算s=*r*r输出面积输出面积s(1)在程序框图中在程序框图中,开始框和结束框不可少;开始框和结

11、束框不可少;(2)在算法过程中,在算法过程中,输出语句是必不可少的输出语句是必不可少的;20思考思考2:2:若一个三角形的三条边长分别为若一个三角形的三条边长分别为a a,b b,c c,令,令 ,则三角形的面积,则三角形的面积 . .你能利用这个公式你能利用这个公式设计一个计算三角形面积的算法步骤吗?设计一个计算三角形面积的算法步骤吗?2abcp+=()()()sp papb pc=-第一步,输入三角形三条边的边长第一步,输入三角形三条边的边长 a a,b b,c.c. 第二步,计算第二步,计算 . . 2abcp+=第三步,计算第三步,计算 . .()()()sp p a p b p c=

12、-第四步,输出第四步,输出s. s. 21思考思考3:3:上述算法的程序框图如何表示?上述算法的程序框图如何表示?开始开始结束结束输出输出s输入输入a,b,c2abcp+=()()()sp p a p b p c=-22练习:练习:1.就(就(1)逻辑结构,说出它的算)逻辑结构,说出它的算法功能法功能开始开始输入输入a,b结束结束sum=a+b输出输出sum(1)2.已知梯形上底为已知梯形上底为2,下底为,下底为4,高为高为5,求其面积,设计出该,求其面积,设计出该问题的流程图问题的流程图开始开始5, 4, 2hbahbas)(21输出输出s结束结束答案:答案:(1)求两个数的和求两个数的和2

13、3 例例3 3 已知下图是已知下图是“求一个正奇数的平方求一个正奇数的平方加加5 5的值的值”的程序框图,若输出的数是的程序框图,若输出的数是3030,求,求输入的数输入的数n n的值的值. .开始开始结束结束输入正整数输入正整数n输出输出yy=x2+5x=2n- -1 例例4 4 一个笼子里装有鸡和兔共一个笼子里装有鸡和兔共m m只,且只,且鸡和兔共鸡和兔共n n只脚,设计一个计算鸡和兔各有多只脚,设计一个计算鸡和兔各有多少只的算法,并画出程序框图表示少只的算法,并画出程序框图表示. .理论迁移理论迁移算法分析:算法分析: 第一步,输入第一步,输入m m,n.n.第二步,计算鸡的只数第二步,

14、计算鸡的只数 . .42mnx-=第三步,计算兔的只数第三步,计算兔的只数y=m-x.y=m-x.第四步,输出第四步,输出x x,y.y.开始开始结束结束输出输出x,y输入输入m,n42mnx-=y y= m-xm-x程序框图:程序框图: 26顺序结构的程序框图的基本特征:顺序结构的程序框图的基本特征:小结作业小结作业(2 2)各程序框从上到下用流程线依次)各程序框从上到下用流程线依次连接连接. .(1 1)必须有两个起止框,穿插输入、输)必须有两个起止框,穿插输入、输出框和处理框,没有判断框出框和处理框,没有判断框. .(3 3)处理框按计算机执行顺序沿流程线)处理框按计算机执行顺序沿流程线

15、依次排列依次排列. .-条件结构条件结构提出问题提出问题1.判断框是什么形状?什么条件下要用判断框是什么形状?什么条件下要用判断框?判断框?当算法要求在不同的情况下当算法要求在不同的情况下执行不同的运算时执行不同的运算时,需要判断框需要判断框.框内填写判断条件框内填写判断条件.判断某一条件是否成立判断某一条件是否成立,成立时在出成立时在出口处标明口处标明“是是”或或“y”,不成立时标不成立时标明明“否否”或或“n”.2.判断框的功能是什么?判断框的功能是什么?例:例:联邦快递公司规定甲、乙两地之间物品的联邦快递公司规定甲、乙两地之间物品的托运费用根据下面的方法计算:托运费用根据下面的方法计算:

16、其中其中f f(单位:元)为托运费,(单位:元)为托运费,为托运物品为托运物品的重量(单位:千克),的重量(单位:千克),试给出计算费用(单位:元)的一个算法,并试给出计算费用(单位:元)的一个算法,并画出流程图画出流程图0.5350f=50 0.53500.8550 自然语言是:自然语言是:第一步:输入物品重量第一步:输入物品重量;第二步:如果第二步:如果=50=50,那么,那么f=0.53 ,f=0.53 ,否则否则f=50f=500.53+(-50) 0.53+(-50) 0.85;0.85;第三步:输出托运费第三步:输出托运费f.f.(2)条件结构条件结构 在一个算法中在一个算法中,

17、,经常会遇到一些条件的判断经常会遇到一些条件的判断, ,算法的流算法的流程根据条件程根据条件是否成立是否成立有不同的流向有不同的流向. .条件结构条件结构就是处理这就是处理这种过程的结构种过程的结构. .符合条件就执行符合条件就执行a,否则执行否则执行b符合条件就执行符合条件就执行a,否则执否则执行条件结构后的步骤行条件结构后的步骤满足条件?满足条件?步骤步骤a步骤步骤b是是否否步骤步骤a满足条件?满足条件?是是否否例例1.1.任意给定任意给定3 3个正实数个正实数, ,设计一个算法设计一个算法, ,判断以这判断以这3 3个正个正实数为三条边边长的三角形是否存在实数为三条边边长的三角形是否存在

18、, ,并画出这个算法的并画出这个算法的程序框图程序框图. .算算 法法程序框图程序框图开始开始输入输入, ,a b cabc bca cab是否同时成立?是否同时成立?存在这样存在这样的三角形的三角形结束结束不存在这样不存在这样的三角形的三角形第一步:输入第一步:输入的值的值, ,a b c第二步:判断第二步:判断 , , 是否同是否同时成立时成立. .若是若是, ,则存在这则存在这样的三角形;否则,不样的三角形;否则,不存在这样的三角形存在这样的三角形. .abc bca cab否否是是开始开始输入输入, ,a b c结束结束?abc ?bca 是是存在这样存在这样的三角形的三角形?cab

19、是是是是不存在这样不存在这样的三角形的三角形否否否否否否判断这个框图是否正确判断这个框图是否正确练习练习1. 程序框图要输出给程序框图要输出给定两个实数定两个实数a,b中较中较小的数,则判断框应小的数,则判断框应填填_. 输入输入a,b输出输出a否否开始开始结束结束输出输出b是是ab练习练习2.设计一个算法求任意设计一个算法求任意实数的绝对值,并画出实数的绝对值,并画出流程图流程图 输入输入输出输出0 x yxyx 是是否否开始开始结束结束3、看下面的程序框图,分析算法的作用、看下面的程序框图,分析算法的作用开始开始结束结束输入输入a,ba3?否否结束结束输出输出yy=5y=1.2x+1.45

20、(3)1.21.4(3)xyxx练习练习5 5识别下列流程图所描述的算法识别下列流程图所描述的算法根据给出的两个流程图根据给出的两个流程图,分析分析: (1)图图1所解决的是什么问题所解决的是什么问题? (2)回答回答: 当输入的当输入的x值为值为1时时,输出输出 y的值为多大的值为多大? 要使输出的要使输出的y值为值为8,输入输入的的x值为多大值为多大? 输入的输入的x和输出的和输出的y能相能相等吗等吗?2y 图图1结束结束22yxx2x 是是否否输入输入x输出输出y开始开始-24当当x=3时,时,x=y练习练习6已知函数,已知函数,设计计算函数值设计计算函数值的一个算法的一个算法,并画并画

21、出流程图出流程图. 1,00,01,0 xyxx开始开始结束结束7、如图所示的程序框图、如图所示的程序框图的功能是(的功能是( ) 求求a,b,c三个数中的最大数三个数中的最大数 求求a,b,c三个数中的最小数三个数中的最小数c.将将a,b,c按从小到大的顺序排列按从小到大的顺序排列d.将将a,b,c按从大到小的顺序排列按从大到小的顺序排列开始开始输入输入a,b,cab?否否是是输出输出a结束结束a=bac?是是a=c否否b22(2) (0)4(0)(2) (0)xxyxxx开始开始程序框图程序框图x0?是是y=(x+2)2否否x=0?是是y=4否否输出输出y结束结束输入输入xy=(x-2)2

22、8.为下列的分段函数为下列的分段函数设计一个算法,设计一个算法,并画出程序框图并画出程序框图小结:小结:画流程图的步骤:画流程图的步骤:转化转化先用自然语言描述流程图先用自然语言描述流程图;解决解决分段函数分段函数,大小比较大小比较,正负判断正负判断等问题时,需要用条件结构等问题时,需要用条件结构条件结构中,判断框内的条件表示条件结构中,判断框内的条件表示不不唯一唯一;遇多个判断时,可有多个判断框;遇多个判断时,可有多个判断框作业作业: :1.已知直线已知直线 经过点经过点a(1,1),b(a,4).设计一个算法求直线设计一个算法求直线 的斜率,写的斜率,写出程序框图出程序框图.ll作业作业:

23、 :2.阅读下面的流程图阅读下面的流程图, 当当y=1时,输出的结果是时,输出的结果是 _.开始开始输入输入y输出输出x结束结束12 yttx4log作业思考题作业思考题: :设计一个算法求三个数设计一个算法求三个数a,b,c中的最中的最小数,并写出程序框图小数,并写出程序框图.6 6、设计房租收费的算法、设计房租收费的算法, ,其要求是其要求是: :住房面积住房面积8080平平方米以内方米以内, ,每平方米收费每平方米收费3 3元元, ,住房面积超过住房面积超过8080平方平方米时米时, ,超过部分超过部分, ,每平方米收费每平方米收费5 5元元. .输入住房面积数输入住房面积数, ,输出应

24、付的房租输出应付的房租. .算法分析:算法分析:第一步:第一步:输入住房面积输入住房面积s第二步:根据面积选第二步:根据面积选择计费方式:如果择计费方式:如果s小于或等于小于或等于80,则租,则租金为金为m=s3,否则,否则为为m=240+(s-80)5第三步:第三步:输出房租输出房租m的值。的值。开始开始结束结束输入面积输入面积s输出租金输出租金ms7时时)50解解:y与与x之间的函数关系为之间的函数关系为:1.2 ,1.94.9xyx(当当0 x7时时)(当当x7时时)算法分析算法分析:第一步第一步:输入每月用水量输入每月用水量x;第二步第二步:判断判断x是否不超是否不超过过7.若是若是,

25、则则y=1.2x;若若否否,则则y=1.9x-4.9.第三步第三步:输出应交纳的水输出应交纳的水费费y.开始开始输入输入x0100100是否成立是否成立. .若是,则输出若是,则输出s s,结束算法;否则,返回第二步结束算法;否则,返回第二步. .第一步,令第一步,令i=1i=1,s=0.s=0.第二步,计算第二步,计算s+is+i,仍用,仍用s s表示表示. .第三步,计算第三步,计算i+1i+1,仍用,仍用i i表示表示. .思考思考5:5:用直到型循环结构,上述算法的程序框图如何表示?用直到型循环结构,上述算法的程序框图如何表示?开始开始i=1i100?是是输出输出s结束结束s=0i=i

26、+1s=s+i否否思考思考6:6:用当型循环结构,上述算法的程序框图如何表示?用当型循环结构,上述算法的程序框图如何表示?开始开始i=1结束结束输出输出s否否是是s=0s=s+ii100?i=i+1 例例1 1 设计一个求解一元二次方程设计一个求解一元二次方程axax2 2+bx+c=0+bx+c=0的算法,并画出程序框图表示的算法,并画出程序框图表示. . 理论迁移理论迁移算法分析:算法分析:第一步,输入三个系数第一步,输入三个系数a a,b b,c.c.第二步,计算第二步,计算=b=b2 2-4ac.-4ac.第三步,判断第三步,判断0 0是否成立是否成立. .若是,则计若是,则计 算算

27、;否则,输出;否则,输出“方方程没有程没有 实数根实数根”,结束算法,结束算法. .,22bpqaa=-=v第四步,判断第四步,判断=0=0是否成立是否成立. .若是,则输出若是,则输出 x x1 1=x=x2 2=p=p,否则,计算,否则,计算x x1 1=p+q=p+q,x x2 2=p-q=p-q, 并输出并输出x x1 1,x x2 2. . 程序框图:程序框图:开始开始输入输入a,b,c= b2- -4ac0?=0?否否x1=p+q输出输出x1,x2结束结束否否是是2bpa= -2qa=vx2=p- -q输出输出x1=x2=p是是输出输出“方程没有方程没有实数根实数根” 例例2 2

28、某工厂某工厂20052005年的年生产总值为年的年生产总值为200200万元,万元,技术革新后预计以后每年的年生产总值都比上一技术革新后预计以后每年的年生产总值都比上一年增长年增长5%.5%.设计一个程序框图,输出预计年生产总设计一个程序框图,输出预计年生产总值超过值超过300300万元的最早年份万元的最早年份. .第三步,判断所得的结果是否大于第三步,判断所得的结果是否大于300.300.若是,则若是,则输出该年的年份;否则,返回第二步输出该年的年份;否则,返回第二步. .第一步,第一步, 输入输入20052005年的年生产总值年的年生产总值. .第二步,计算下一年的年生产总值第二步,计算下

29、一年的年生产总值. .算法分析:算法分析:(3 3)控制条件:当)控制条件:当“a300”a300”时终止循环时终止循环. .(1 1)循环体:设)循环体:设a a为某年的年生产总值,为某年的年生产总值,t t为年生为年生产总值的年增长量,产总值的年增长量,n n为年份,则为年份,则t=0.05at=0.05a,a=a+ta=a+t,n=n+1.n=n+1.(2 2)初始值:)初始值:n=2005n=2005,a=200.a=200.循环结构:循环结构:开始开始n=2005a=200t=0.05aa=a+tn=n+1a300?结束结束输出输出n是是否否程序框图:程序框图:(3 3)条件结构和循

30、环结构的程序框图各有两种形)条件结构和循环结构的程序框图各有两种形式,相互对立统一式,相互对立统一. .条件结构和循环结构的基本特征:条件结构和循环结构的基本特征:小结作业小结作业(1 1)程序框图中必须有两个起止框,穿插输入、)程序框图中必须有两个起止框,穿插输入、输出框和处理框,一定有判断框输出框和处理框,一定有判断框. .(2 2)循环结构中包含条件结构,条件结构中不含)循环结构中包含条件结构,条件结构中不含循环结构循环结构. .输出输出5a开始开始i=i+1i=1输入误差输入误差d结束结束md?将将 的到小数点后第的到小数点后第i位的不足近似值,记为位的不足近似值,记为a.2将将 的到

31、小数点后第的到小数点后第i位的过剩近似值,记为位的过剩近似值,记为b.255bam 是是否否 设计一个用有理指数幂逼近设计一个用有理指数幂逼近无理数指数幂无理数指数幂 的算法,并的算法,并估计估计 的近似值,画出算法的的近似值,画出算法的程序框图程序框图.2525p19练习练习算法步骤:算法步骤:第一步,给定精确度第一步,给定精确度d,令,令i1.第二步,取出第二步,取出 的到小数点后第的到小数点后第i位的不足近似值,记为位的不足近似值,记为a.再取出再取出它的到小数点后第它的到小数点后第i位的过剩近似位的过剩近似值,记为值,记为b.2第三步,计算第三步,计算 .55ba第四步,若第四步,若m 7.开始开始输入用水量输入用水量y =1.2x输出水费输出水费y结束结束

温馨提示

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

评论

0/150

提交评论