1、第二章第二章算法初步算法初步顺序结构与选择结构顺序结构与选择结构新课学习新课学习 一个人带三只狼和三只羊过河,只有一条船,同船可以容一个人和两只动物,没有人在的时候,如果狼的数量不少于羊的数量,狼就会吃掉羊,设计一个安全渡河的算法。三只三只三只三只新课学习新课学习第一步,人带2只狼过河,河边有3羊1狼,安全无事。第二步,到了岸边放下1只狼,带着船上的1只狼回去接羊。第三步,再载上1只羊,这样船上1狼1羊,河边还有2羊1狼,对岸有1狼,安全无事。第四步,到了对岸,放下1只羊,再载上1只狼,回去岸边接羊。第五步,把船上2只狼放下,接上2只羊过河,现在,河边3只狼,对岸1只羊,也安全到了对岸放下2只
2、羊,空船回去装狼。第六步,船上装2只狼过河,这样河边还有1只狼,对岸有3只羊,没问题到了岸边放下2只狼再回去接狼。第七步,把剩下的一只狼装上,过了河就完事了。上述算法过程如此的复杂,怎么能有条理地、清晰地表示算法呢?上述算法过程如此的复杂,怎么能有条理地、清晰地表示算法呢?新课学习新课学习程序框图:程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形。新课学习新课学习程序框名称功能 终端框(起止框)表示一个算法的起始和结束 输入、输出框表示算法的输入和输出的信息 处理框(执行框)赋值、计算判断框判断一个条件是否成立,用“是”、“否”或“Y”、“N”标明。成立时在出口处标明“是”
3、或“Y”;不成立时标明“否”流程线连接程序框连接点连接程序框图的两部分新课学习新课学习注意:注意:终端框(起止框)是任何程序框图都不可缺少的。输入、输出框 可用在算法中的任何需要输入、输出的位置。处理框(执行框)是用来赋值、执行计算语句、传送运算结果的图形符号。判断框 一般有一个入口和两个出口,有时也有多个出口,它是唯一的具有两个或两个以上出口的符号,在只有两个出口的情形中,通常都分成是与否(也可以用Y与N)两个分支。思考:画程序框图的规则是什么?新课学习新课学习框图一般按从上到下、从左到右的方向画。使用标准的图形符号。除判断框外,大多数流程图符号只有一个进入点和一个退出点,判断框是具有超过一
4、个退出点的唯一符号。判断框分两大类,一类判断框是“是”与“否”两分支的判断,而且有且仅有两个结果,另一类是多分支判断,有几种不同的结果。在图形符号内描述的语言要非常简练清楚。新课学习新课学习 开始 输入42输出结果结束是减去6结果小于6吗?否这个框图表示的是一个算法,按照这一程序操作时,输出的结果是0上面的框图可以表示一个算法吗?上面的框图可以表示一个算法吗?新课学习新课学习由顺序结构和选择结构组成。顺序结构是由若干个依次执行的处理步骤组成的,这是任何一个算法都离不开的基本结构。思考思考1 1:上述算法由哪些基本结构组成上述算法由哪些基本结构组成?思考思考2 2:什么是顺序结构?什么是顺序结构
5、?思考思考3 3:顺序结构的一般形式是怎样的?顺序结构的一般形式是怎样的?新课学习新课学习思考思考4 4:什么是选择结构?:什么是选择结构?一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判断,并根据判断结果进行不同的处理。因此,需要另一种逻辑结构来处理这类问题,这种结构叫做选择结构,它是根据指定条件选择执行不同指令的控制结构。新课学习新课学习思考思考5 5:条件结构的一般形式是怎样的?:条件结构的一般形式是怎样的?判断条件真假真假步骤甲步骤乙随堂练习随堂练习例例1 1 半径为r的球面的面积计算公式为 ,当r=10时,画出程 序框图。解:解:开始输入r=10输出S 结束随
6、堂练习随堂练习例例2 2:已知一个三角形三条边长分别为 ,b,c,利用海伦-秦九韶公式设 计一个计算三角形面积的算法,并画出程序框图表示。解解:算法步骤为:第四步,输出S第一步,输入三角形三条边的边长 a,b,c第二步,计算第三步,计算随堂练习随堂练习程序框图程序框图为为 开始输入,b,c 输出S 结束随堂练习随堂练习例例3 3:已知算法:第一步,输入x第二步,若x0,则执行第三步,否则,执行第六步第三步,y=x+1第四步,输出y第五步,结束第六步,若x=0,则执行第七步,否则,执行第十步第七步,y=1第八步,输出y第九步,结束第十步,y=x第十一步,输出y第十二步,结束将该算法用程序框图来描
7、述。随堂练习随堂练习y=1 y=x y=x+1 开始输入x X0?X=0?输出y输出y输出y结束是否否是随堂练习随堂练习1、写出边长为3,4,5的直角三角形内切圆面积的程序框图。2、已知三角形的三边长,用程序框图表示求这个三角形的周长的算法。3、设超市购物标价不超过100元时按九折付款,如标价超过100元,则超过部分按七折收费,画出相应的程序框图。随堂练习随堂练习1、解:程序框图为 开始输入3,4,5 输出S 结束随堂练习随堂练习2、解:程序框图为 开始输入三边长 ,b,c 输出S 结束随堂练习随堂练习 开始输入x 输出x,y 结束?100 x 是否y=0.9 100+0.7 (x-100)3、解:程序框图为新课学习新课学习3、顺序结构:顺序结构是由若干个依次执行的处理步骤组成的,这是 任何一个算法都离不开的基本结构。1、程序框图:程序框图又称流程图,是一种用程序框、流程线及文字 说明来表示算法的图形。2、程序框及其功能:4、选择结构:它是根据指定条件选择执行不同指令的控制结构。新课学习新课学习5、顺序结构的一般形式:新课学习新课学习6、条件结构的一般形式:判断条件真假真假步骤甲步骤乙再见再见