1.1.2程序框图_第1页
1.1.2程序框图_第2页
1.1.2程序框图_第3页
1.1.2程序框图_第4页
1.1.2程序框图_第5页
已阅读5页,还剩18页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、1.1.2 程序框图程序框图上节课例上节课例1:任意给定一个大于任意给定一个大于1的整数的整数n,试设计一个试设计一个算法判定算法判定n是否为质数是否为质数.算法分析:算法分析:1.判断判断n是否等于是否等于2,如果如果n=2,则则 n为质数为质数,若若n2,则执行第则执行第2步步.2.依次从依次从2到到n-1检验是不是检验是不是n的因数的因数(即是否整除即是否整除n).若存在这样若存在这样的数的数,则则n不是质数不是质数,若不存在这样的数若不存在这样的数,则则n为质数为质数.以上是用自然语言描述一个算法以上是用自然语言描述一个算法.为了使得算法的描述更为直观和为了使得算法的描述更为直观和步骤

2、化步骤化,下面介绍另一种描述算法的方法下面介绍另一种描述算法的方法:流程图流程图.流程图的通俗解释流程图的通俗解释: 由一些图框和有向箭头构成由一些图框和有向箭头构成,表示算法按一表示算法按一定的顺序执行定的顺序执行.上例算法的流程图上例算法的流程图(见下页)复习复习:流程图的图形符号流程图的图形符号:观察右边的流程图观察右边的流程图:(1)有箭头指向的线有箭头指向的线.(2)不同形状的框图不同形状的框图.结束结束开始开始Flag=1n2?d=2输入输入nd=n-1且且flag=1?N不是质数不是质数n是质数是质数d整除整除n?Flag=0Flag=1?d=d+1是是是是是是否否否否是是否否否

3、否(1)(2)否否算法中从上一步算法中从上一步骤指向下一步骤骤指向下一步骤流程线流程线用来根据给定的条件用来根据给定的条件是否满足决定执行两是否满足决定执行两条路径中的某一路径条路径中的某一路径判断框判断框赋值、运算赋值、运算执行框执行框表示输入输出表示输入输出操作操作输入输入,输出框输出框表示一个算法的表示一个算法的起始与结束起始与结束起止框起止框含义名 称图形符号2.对程序框 表示的功能描述正确的一项是:( ).A.表示算法的起始和结束.B.表示算法输入和输出的信息.C.赋值、计算.D. 按照算法顺序连接程序图框.1.流程图的功能是:.( ).A.表示算法的起始和结束.B.表示算法的输入和

4、输出信息.C.赋值、运算.D.按照算法顺序连接程序图框.答案答案:D,B练习:Flag=1输入输入n否否d2?是是顺序结构顺序结构循环结构循环结构算法三种基本逻辑结构算法三种基本逻辑结构开始开始结束结束算法三种基本逻辑结构算法三种基本逻辑结构(顺序结构、条件结构、循环结构顺序结构、条件结构、循环结构)流程图表示,实例流程图表示,实例,程序演示:程序演示:顺序、条件、循环三种基本的逻辑结构:顺序、条件、循环三种基本的逻辑结构:1.顺序结构顺序结构:最简单的算法结构,框与框之间从上到下进行。最简单的算法结构,框与框之间从上到下进行。任何算法都离不开顺序结构。任何算法都离不开顺序结构。 A B 实例

5、实例:三角形三角形ABC的底的底BC为为4, 高高AD为为2,求三角形求三角形ABC的面积的面积S, 试设计该问题的算法和流程图试设计该问题的算法和流程图.解解:算法如下算法如下:1.底底BC为为a=4, 高高AD为为b=2. 2.S=1/2ab3.输出输出S.流程图流程图: 开始 a=4,b=2 S=1/2ab输出输出S结束结束练习练习:利用梯形的面积公式计算上底为利用梯形的面积公式计算上底为2,下底为下底为4,高为高为5的梯形面积的梯形面积.试设计该问题的算法和流程图试设计该问题的算法和流程图.解解:算法如下算法如下:1.a=2, b=4,h=5;2.S=(a+b) *h/2 3.输出输出

6、S.流程图流程图: 开开 始始a=2 b=4 h=5.输出输出S. 结结 束束程序实现:main()int a,b,h,s;a=2,b=4,h=5;s=(a+b)*h/2printf(“s=%d”,s); 输出:15 注:txmz.cS=(a+b)*h/2(2).条件结构条件结构:一个算法的执行过程中会遇到一些条件的一个算法的执行过程中会遇到一些条件的判断判断,算法的流程根据条件是否成立有不同的流向算法的流程根据条件是否成立有不同的流向.如图: P A B是(是(1)否(否(2)设计求一个数x的绝对值y=x的算法并画出相应的流程图:练习: 分析:根据绝对值的定义根据绝对值的定义,当当x0,y=

7、x;当当x=0)y=x;else y=-x;printf(“%fn”,y);输入输入:5 -10输出输出:5 10 注注:jdzhi.c 开始开始输 入输 入 x y=xy=-x输出输出y 结束结束是是否否x0?例:例:联邦快递公司规定甲、乙两地之间物品的托运费联邦快递公司规定甲、乙两地之间物品的托运费用根据下面的方法计算:用根据下面的方法计算:其中其中f f(单位:元)为托运费,(单位:元)为托运费,为托运物品的重量为托运物品的重量(单位:千克),(单位:千克),试画出计算费用试画出计算费用f f的程序框图。的程序框图。0.5350f=50 0.53500.8550 自然语言是:自然语言是:

8、第一步:输入物品重量第一步:输入物品重量;第二步:如果第二步:如果=50=50,那么,那么f=0.53 ,f=0.53 ,否则否则f=50f=500.53+(-50) 0.53+(-50) 0.85;0.85;第三步:输出托运费第三步:输出托运费f.f.(3)循环结构:需要重复执行同一操作的结构称为循环结需要重复执行同一操作的结构称为循环结构构.即从某处开始按照一定的条件反复执行某一处理步骤即从某处开始按照一定的条件反复执行某一处理步骤.反复执行处理的步骤称为循环体反复执行处理的步骤称为循环体.注:循环结构一定包含条件结构.实例:1+2+3+4+5+6+7+.+100=?分析:只需要一个累加变

9、量sum和计数变量i.将累加变量sum初值赋为0,计数变量i从1到100变化.算法分析算法分析: (见下页见下页)1.sum=0;2.i=1;3.sum=sum+i;4.i=i+1;5.如果如果i小于等于小于等于100,返回重新返回重新执行第执行第3步步,第第4步步,第第5步步,否则结束否则结束,得得到到sum值值. sum=1+2+3+4+5+6+.+100.流程图流程图:开始开始 Sum=0 i=i+1Sum=sum+i i=1输出输出sum 结束结束i=100第一次循环第一次循环sum= 第二次循环第二次循环sum=第三次循环第三次循环sum=分析分析:初值初值sum=0,i=10+1=

10、1,i=21+2=3,i=33+3=6Sum=1Sum=1+2Sum=1+2+3 Sum=1+2+3+100是是否否练习习: 1+3+5+7+31=?分析分析:只需要一个累加变量只需要一个累加变量sum和计数变量和计数变量i.将累加将累加变量变量sum初值赋为初值赋为0,计数变量计数变量i从从1到到31变化变化.算法分析算法分析:(见下页)开始开始 Sum=0 i=i+1Sum=sum+i i=1输出输出sum 结束结束i=100i=31开始开始Sum=0 i=1输出输出sum 结束结束流程图流程图:Sum=sum+i算法分析算法分析:(1).sum=0; (2).i=1;(3).sum=sum+i;(4).i=i+2;(5).如果如果i小于等于小于等于31,返回重新执行第返回重新执行第3步步,第第4步步,第第5步步,否则结束否则结束,得到得到sum的的值值,sum=1+3+5+7+31. i=i+2mian()int sum,i;sum=0;i=1;f

温馨提示

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

评论

0/150

提交评论