算法与程序框图(精品)_第1页
算法与程序框图(精品)_第2页
算法与程序框图(精品)_第3页
算法与程序框图(精品)_第4页
算法与程序框图(精品)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、1.1.2程序框图(2),(条件结构、循环结构),程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.,1.程序框图的概念,2.常见的程序框图(ANSI,美国国家标准化协会),流程线,连接循环框,连结点,连接循环框图的两部分,复习回顾,终端框 (起止框),输入、 输出框,处理框 (执行框),判断框,表示一个算法的 起始和结束,表示一个算法输 入和输出的信息,赋值、计算,判断某一条件是否成立,成立时在出口处标明“是”或“Y”,不成立时标明“否”或“N”.,尽管不同的算法千差万别,但它们都是由三种基本的逻辑结构构成的。,3.程序框图有以下三种不同的逻辑结构:,顺序

2、结构,条件结构,循环结构,二、顺序结构及框图表示,1.顺序结构:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构.,语句A,语句B,2.顺序结构的流程图,顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个处理步骤组成的,这是任何一个算法都离不开的基本结构.,左图中,语句和语句是依次执行的,只有在执行完语句指定的操作后,才能接着执行语句所指定的操作,问题:北京获得了2008年第29届奥林匹克运动会主办权.你知道在申办奥运会的最后阶级,国际奥委会是如何通过投票决定主办权归属的吗?,用怎样的算法结构表述上面的操作过程?,S1:

3、投票; S2:统计票数,如果有一个城市得票超过总票数的一半,那么该城市就获得主办权,转S3,否则淘汰得票数最少的城市,转S1; S3: 宣布主办城市.,新课引入,开始,投票,有一个城市 得票数超过总票 数的一半,输出该城市,结束,淘汰得票数 最少的城市,Y,N,在许多算法中,需要对问题的条件作出逻辑判断,判断后依据条件是否成立而进行不同的处理方式,这就需要用条件结构来实现算法.,1.条件结构:条件结构是指在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构.它的一般形式是,基本形式1,一、条件结构及框图表示,讲授新课,满足条件?,语句,否,是,一、条件结构及框图表示,满足条件?,

4、语句1,语句2,是,否,讲授新课,基本形式2,基本形式2包含一个判断框,根据给定的条件是否成立而选择执行语句1或语句2,无论条件是否成立,只能执行语句1或语句2之一,不可能执行语句1又执行语句2,也不可能语句1,语句2都不执行.,【例1】任意给定3个正实数,设计一个算法,判断分别以这三个数为三边边长的三角形是否存在.画出这个算法的程序框图.,a+bc,a+cb, b+ca是否 同时成立?,开始,存在这样 的三角形,结束,不存在这样 的三角形,否,是,输入a,b,c,【例】闰年是指年份能被4整除但不能被100整除,或者能被400整除的年份.编写一个程序,判断输入的年份是否为闰年.,课本P.30

5、(4),开始,结束,年份 n,否,是,是,否,闰年,不是闰年,闰年,1,1,开始,输入x,x0?,否,是,输出x,输出-x,结束,课堂练习,【1】设计一个求任意数的绝对值的算法,并画出程序框图.,第一步:输入x; 第二步:如果x ,则lxlx ;否则,lxl-x; 第三步:输出lxl,开始,输入x,x0?,N,Y,输出|x|,结束,|x|=x,|x|=-x,【1】设计一个求任意数的绝对值的算法,并画出程序框图.,开始,输入x,X3?,否,是,结束,y=5+1.2(x-3),输出y,y=5,【2】卫生费:计费方法:3人和3人以下,每户收5元;超过3人的住户,每超过1人加收1.2元,设计一个算法,

6、根据输入的人数,计算应收的卫生费,并画出程序框图.,P.21A3,开始,输出min,结束,min=a,输入a,b,c,bmin?,Y,N,min=b,【3】画出一个求3个实数中最小数的程序框图.,cmin?,min=c,N,Y,1,1,输出x,y,结束,D=0?,输出无法 求解信息,Y,N,【4】画出用公式法解二元一次方程组 的算法的程序框图.,开始,D=a1b2-a2b1,输入a1,b1, c1a2,b2,c2,1,1,开始,y=1,结束,输入x,X100?,否,是,X5000?,X100000?,y=x1%,y=50,是,是,否,否,【5】观察所给程序框图,说出它所表示的函数.,算法2:,

7、第一步:从1开始将自然数1,2,3,100逐个相加;,第二步:输出累加结果.,1.上边的式子有怎样的规律呢?,2.怎么用程序框图表示呢?,Sum=Sum + i,设计一算法,求和:1+2+3+ +100.,Sum=0 Sum=Sum + 1 Sum=Sum + 2 Sum=Sum + 3 Sum=Sum + 100,思考:,在一些算法中,经常会出现从某处开始,反复执行某一处理步骤,这就是循环结构.,1.循环结构的概念,循环结构是指在算法中从某处开始,按照一定的条件反复执行某一处理步骤的结构.在科学计算中,有许多有规律的重复计算,如累加求和、累乘求积等问题要用到循环结构.,三、循环结构及框图表示

8、,讲授新课,当型循环结构,满足条件?,循环体,Y,N,当型循环结构在每次执行循环体前对控制循环条件进行判断,当条件满足时执行循环体,不满足则停止.,2.循环结构的算法流程图,直到型循环结构,条件,语句A,Y,N,直到型循环执行了一次循环体之后,对控制循环条件进行判断,当条件不满足时执行循环体,满足则停止.,3.循环结构的设计步骤,(1)确定循环结构的循环变量和初始条件; (2)确定算法中需要反复执行的部分,即循环体; (3)确定循环的终止条件.,4.循环结构的三要素,循环变量,循环体、循环的终止条件.,例1.设计一个计算1+2+3+100的程序框图.,开始,i100?,否,是,输出sum,结束

9、,i=1,Sum=0,i=i+1,Sum=sum+i,例1.设计一个计算1+2+3+100的程序框图.,开始,i 100?,否,是,输出sum,结束,i=1,Sum=0,Sum=sum+i,i=i+1,1.画出求mul=123100问题的程序框图.,第一步:设i=1,mul =1;,第二步:如果i100执行第三步,否则执行第五步;,第三步:计算muli并将结果代替mul;,第四步:将i+1代替i,转去执行第二步;,第五步:输出mul.,课堂练习,开始,i n?,否,是,输出mul,结束,Mul=1,i=1,i=i+1,mul=muli,开始,结束,输入ri,r 6.8?,否,是,i=1,i=i

10、+1,i9?,是,否,输出ri,P.12B1,课堂练习,开始,结束,输入r,r6.8?,否,是,n=1,n=n+1,n9?,输出r,是,否,P.12B1,例2.画出,的值的程序框图.,解法2.,开始,输出a6,结束,1,1,开始,i6?,否,是,输出t,结束,i=1,t=0,i=i+1,例3.某工厂2004年的生产总值为200万元,技术革新后预计以后每年的生产总值比上一年增加5%,问最早需要哪一年年生产总值超过300万元.写出计算的一个算法,并画出相应的程序框图.,第一步:n=0,a=200,r=0.05;,第二步:T=ar(计算年增量);,第三步:a=a+T(计算年产值);,第四步:如果a3

11、00,那么n=n+1,重复执行第二步;,第五步:N=2004+n;,第六步:输出N.,开始,a300?,否,是,输出N,结束,n=0,a=200,r=0.05,n=n+1,a=a+T,T=ar,1,1,N=2004+n,算法如下:,第一步:P=0;,第二步:i=1;,第三步:t=0;,第四步:p=p+i;,第五步:t=t+1;,第六步:i=i+t.,第七步:如果i不大于46,返回重新执行第四、五、六步;否则,跳出循环结束程序.,例4.设计一个求1+2+4+7+46的算法,并画出相应的程序框图.,开始,i 46?,否,是,输出p,结束,P=0,i=1,t=0,p=p+i,t=t+1,i=i+t,1,1,课堂小结,小结,1.循环结构的特点,2.循环结构的框图表示,3.循环结构有注意的问题,避免死循环的出现,设置好进入(结束)循环体的条件.,当型和直到型,重复同一个处理过程,4.用流程图设计算法的经验,流程图

温馨提示

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

评论

0/150

提交评论