- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
算法可以用自然语言来描述,但为了使得算法的描述更为直观和步骤化,上节课我们介绍另一种描述算法的方法:程序框图(流程图).流程图:是一种用程序框、流程线及文字说明来 表示算法的图形。复习:算法:通常是指按照一定规律解决某一类问题的明确和有限的步骤。
连接程序框流程线判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”。判断框赋值、运算处理框(执行框)表示一个算法输入和输出信息输入,输出框表示一个算法的起始与结束终端框(起止框)功能名称图形符号流程图的图形符号:
第一步,给定一个大于2的整数n。第二步,令i=2。第三步,用i除n,得到余数r。判断余数r是否为0,若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示。第四步,判断i是否大于(n-1),若是,则n是质数;否则,返回第三步。上节课例题:任意给定一个大于2的整数n,试设计一个算法判定n是否为质数.算法步骤:
注意观察右边的流程图:(1)有箭头指向的线.(2)不同形状的框图.上例算法的流程图结束开始i=2求n除以i的余数r输入ni=n或r=0n是质数n不是质数r=0?是否是否i=i+1
算法三种基本逻辑结构结束开始n是质数n不是质数r=0?是否i=2输入n顺序结构循环结构条件结构是求n除以i的余数ri=n或r=0否i=i+1
算法基本逻辑结构顺序结构:由若干个依次执行的处理步骤组成。任何算法都离不开的基本结构。步骤A步骤B
2、条件结构:一个算法的执行过程中会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向。如图1满足条件?步骤A步骤B是否如图2满足条件?步骤A是否
例4:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的程序框图。算法步骤:第一步,输入任意的三个正实数a,b,c流程图:开始输入a,b,ca+bc,a+cb,b+ca是同时成立?存在这样的三角形是不存在这样的三角形否结束第二步,判断a+bc,b+ca,c+ab是否同时成立。若是,则存在这样的三角形;否则,不存在这样的三角形。
练习:已知函数 ,设计一个算法,求函数值,并画出程序框图。算法步骤:第一步,输入一个实数x。流程图:开始输入xx≥0?第二步,判断x≥0是否成立。若是,则f(x)=x2+1;否则,f(x)=x2-1第三步,输出f(x)值。是f(x)=x2+1结束否f(x)=x2-1输出f(x)
练习:设计求一个任意数的绝对值的算法并画出相应的流程图分析:根据绝对值的定义,如果y=|x|,当x≥0,y=x;当x0时,y=-x,所以当给出一个自变量x的值,求它所对应的y值时必需先判断x的范围,所以要用到条件结构.算法步骤:第二步,判断x≥0是否成立。若是,y=x;否则y=-x.第三步,输出y.第一步,输入x.
流程图:开始输入xy=xy=-x输出y结束是否x≥0?
3、循环结构:在一些算法中,也经常会出现从某处开始,按照一定条件,反复执行某一步的情况,这就是循环结构。反复执行的步骤称为循环体。
某些循环结构用程序框图可以表示为:循环体满足条件?是否这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.
还有一些循环结构用程序框图可以表示为:循环体满足条件?是否这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.
循环结构:在一些算法中,也经常会出现从某处开始,按照一定条件,反复执行某一步的情况,这就是循环结构。反复执行的步骤称为循环体。注:循环结构中一定包含条件结构。循环体满足条件?是否循环体满足条件?是否直到型循环结构(直到条件成立时,退出循环)当型循环结构(当条件成立时,执行循环)
例6:设计一个计算1+2+3+4+5+6+7+…..+100的值算法,并画出程序框图。算法分析:第1步,0+1=1 第2步,1+2=3 第3步,3+3=6 ……………… 第100步,4950+100=5050算法步骤:第一步,令i=1,S=0。第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法。第三步,S=S+i。第四步,i=i+1,返回第二步。
当型流程图开始i=1S=S+iS=0输出Si≤100?结束否i=i+1是
开始i=1i=
文档评论(0)