《程序框图与算法的基本逻辑结构》ppt课件.ppt
《《程序框图与算法的基本逻辑结构》ppt课件.ppt》由会员分享,可在线阅读,更多相关《《程序框图与算法的基本逻辑结构》ppt课件.ppt(39页珍藏版)》请在冰豆网上搜索。
1.1.21.1.2程序框图与算程序框图与算法的基本逻辑结构法的基本逻辑结构一、复习回顾一、复习回顾1、算法的概念是什么?
、算法的概念是什么?
在数学中,算法通常是按照一定规则解决某在数学中,算法通常是按照一定规则解决某一类问题的明确和有限的步骤。
现在,算法通常一类问题的明确和有限的步骤。
现在,算法通常可以编成计算机程序,让计算机执行并解决问题。
可以编成计算机程序,让计算机执行并解决问题。
2、自然语言表述一个算法有什么缺点?
、自然语言表述一个算法有什么缺点?
我们可以用我们可以用自然语言自然语言表述一个算法,但表述一个算法,但往往往往过程复杂,缺乏简洁性。
过程复杂,缺乏简洁性。
因此,我们有必要探究使算法表达因此,我们有必要探究使算法表达更加更加直观、准确直观、准确的方法。
的方法。
这个方法是什么吗?
这个方法是什么吗?
二、讲授新课二、讲授新课1、程序框图、程序框图程序框图又称流程图,是一种用程序程序框图又称流程图,是一种用程序框、流程线和文字说明来表示算法的图形。
框、流程线和文字说明来表示算法的图形。
程序框图是算法的一种表现形式程序框图是算法的一种表现形式。
一个算法可以用一个算法可以用自然语言表示,也可自然语言表示,也可以用程序框图表示以用程序框图表示。
通常是先写出算。
通常是先写出算法的步骤,然后再转化为对应的程序法的步骤,然后再转化为对应的程序框图。
框图。
构成程序框图的图形符号及其功能构成程序框图的图形符号及其功能图形符号图形符号名名称称功能功能表示一个算法表示一个算法的起始与结束的起始与结束输入框输入框输出框输出框表示输入输出表示输入输出操作操作终端框终端框(起止框起止框)一个完整的程序框图,一个完整的程序框图,一定是一定是以起止框表示开始,以起止框表示开始,同时又以同时又以起止框表示结束。
起止框表示结束。
处理框处理框(执行框执行框)赋值、计算赋值、计算判断框判断框判断某一条件是判断某一条件是否成立,成立时在否成立,成立时在出口处标明出口处标明“是是”或或“Y”,不成立,不成立时标明时标明“否否”或或“N”。
流程线流程线连接程序框连接程序框连结点连结点连接程序框图的连接程序框图的两部分两部分v流程线是带有方向的箭头,用以连接程序框,流程线是带有方向的箭头,用以连接程序框,直观的表示算法的流程。
直观的表示算法的流程。
v在程序框图中,任意两个程序框图之间都存在在程序框图中,任意两个程序框图之间都存在流程线;流程线;v除起止框外,任意一个程序框都只有一条流程除起止框外,任意一个程序框都只有一条流程线线“流进流进”v输入输出框、处理框都只有一条流程线输入输出框、处理框都只有一条流程线“流出流出”v但是判断框一定是两条流程线但是判断框一定是两条流程线“流出流出”即兴练习:
1、下面四个程序框图中,从左到右依次是()A、输入框、终端框、处理框、判断框B、终端框、输出框、处理框、判断框C、输出框、处理框、终端框、判断框D、处理框、输入框、终端框、判断框答案:
答案:
C2、在程序框图中,一个算法的步骤到另一个算法的步骤的连接用()A、连接点B、判断框C、流程线D、处理框答案:
C在在1.1.1节中判断节中判断“整数整数n(n2)是否是质是否是质数数”的算法。
的算法。
算法步骤:
算法步骤:
第一步第一步:
给定大于:
给定大于2的整数的整数n第二步第二步:
令:
令i=2第三步第三步:
用:
用i除除n得到余数得到余数r第四步第四步:
判断判断“r=0”是否成立是否成立.若是,则若是,则n不是质数,算法结束;不是质数,算法结束;否则,将否则,将i的值增加的值增加1,仍用,仍用i表示表示.第五步第五步:
判断判断“i(n-1)”是否成立是否成立.若是,则若是,则n是质数,算法结束;是质数,算法结束;否则,返回第三步。
否则,返回第三步。
从从1.1.1节的算法可以看出,算法节的算法可以看出,算法步骤有明确的顺序性,而且有些步骤只步骤有明确的顺序性,而且有些步骤只有在一定条件下才会被执行,有些步骤有在一定条件下才会被执行,有些步骤在一定条件下会被重复执行。
在一定条件下会被重复执行。
程序框图:
程序框图:
v开始开始v输入输入nvi=2v求求n除以除以i的余数的余数rvi的值增加的值增加11v仍用仍用i表示表示vin-1或或r=0?
vr=0?
v结束结束v输出输出“n不是质数不是质数”v输出输出“n是质数是质数”v是是v是是v否否v否否输入一个大于输入一个大于2的整的整数判断是否为质数数判断是否为质数i=i+1in或或r=0?
否否是是求求n除以除以i的余数的余数输入输入ni=2n不是质数不是质数r=0?
n是质数是质数是是否否尽尽管管不不同同的的算算法法千千差差万万别别,但但它它们们都都是是由由三种基本的逻辑结构构成的。
三种基本的逻辑结构构成的。
2、程序框图有以下三种不同的逻辑结构:
、程序框图有以下三种不同的逻辑结构:
顺序结构顺序结构条件结构条件结构循环结构循环结构你能说出这三种基本逻辑结构你能说出这三种基本逻辑结构的特点吗?
的特点吗?
顺序结构是出现最多的基本结构,它可以顺序结构是出现最多的基本结构,它可以单独出现,也可以出现在条件结构和循环单独出现,也可以出现在条件结构和循环结构中。
没有判断框。
结构中。
没有判断框。
条件结构的主要作用就是表示分类。
有判条件结构的主要作用就是表示分类。
有判断框。
断框。
循环结构中一定包含着条件结构,用以控循环结构中一定包含着条件结构,用以控制循环的进程,避免出现制循环的进程,避免出现“死循环死循环”。
有。
有判断框。
判断框。
顺序结构顺序结构1、含义:
、含义:
顺序结构顺序结构是由若干个依次执行的是由若干个依次执行的步骤组成,是最简单的算法结构,框与框之步骤组成,是最简单的算法结构,框与框之间从上到下进行。
任何算法都离不开顺序结间从上到下进行。
任何算法都离不开顺序结构。
构。
2、框图表示、框图表示步骤步骤n步骤步骤n+1例例1、已知一个三角形的三条边长分别为、已知一个三角形的三条边长分别为a,b,c,利用海伦公式,利用海伦公式秦九韶公式设计一秦九韶公式设计一个计算三角形面积的算法,并画出程序框图个计算三角形面积的算法,并画出程序框图表示表示.算法分析:
算法分析:
第一步:
输入三角形三条边长第一步:
输入三角形三条边长a,b,c.第二步:
计算第二步:
计算第三步:
计算第三步:
计算第四步:
输出第四步:
输出S.程序框图:
程序框图:
结结束束开开始始输入输入a,b,c输出输出s写出下图的运行结果。
开开始始输入输入a,ba=2b=4c=aa=bb=cS=a-b输出输出S结束结束答案:
S=2条件结构条件结构在算法中,通过对某个条件的判断,根据在算法中,通过对某个条件的判断,根据条件是否成立条件是否成立选择不同流向的算法结构称为条选择不同流向的算法结构称为条件结构。
件结构。
条件结构可以用程序框图表示为下面两种形式:
条件结构可以用程序框图表示为下面两种形式:
v满足条件满足条件?
v是是v否否v满足条件满足条件?
v是是v否否步骤步骤A步骤步骤B步骤步骤A例例2、任任意意给给定定3个个正正实实数数,设设计计一一个个算算法法,判判断断分分别别以以这这三三个个数数为为三三边边边边长长的的三三角角形形是是否否存存在在.画画出出这这个个算算法法的的程程序序框图框图.第一步:
输入第一步:
输入3个正实数个正实数a,b,c.第二步:
判断第二步:
判断a+bc,b+ca,a+cb,是否同是否同时成立时成立.若是,则存在这样的三角形;否若是,则存在这样的三角形;否则不存在这样的三角形则不存在这样的三角形.程序框图:
程序框图:
v结束结束v开始开始v输入输入a,b,cv存在这样的三角形存在这样的三角形va+bc,a+cb,vb+ca是否同时是否同时v成立成立?
v不存在这样的三角形不存在这样的三角形v是是v否否下图是求实数x的绝对值的算法程序框图,则判断框中可填。
开始输入输入x输出输出x输出输出-x结束答案:
是是否否用自然语言表述为:
第一步:
输入x;第二步:
如果x5,则y=2x+1,如果,则;第三步:
输出y;程序框图如下图所示:
输入输入xX5?
Y=2x+1输出输出y开始结束是是否否循环结构循环结构1.1.含义:
循环结构是指在算法中从某处开含义:
循环结构是指在算法中从某处开始始,按照一定的条件反复执行某些步骤的算按照一定的条件反复执行某些步骤的算法结构法结构.反复执行的步骤称为反复执行的步骤称为循环体循环体。
在科学计算中在科学计算中,有许多有规律的重复计算有许多有规律的重复计算,如如累加求和、累乘求积等问题要用到循环结构累加求和、累乘求积等问题要用到循环结构.直直到到型型循循环环结结构构满足条件?
满足条件?
循环体循环体是是直到型直到型循环循环执行了一次循环体执行了一次循环体之后之后,对控对控制循环条件进行判断制循环条件进行判断,当条件不满足时执行循当条件不满足时执行循环体环体,直到条件直到条件满足时终止循环满足时终止循环.2.框图表示框图表示否否当当型型循循环环结结构构满足条件满足条件?
循环体循环体是是否否当当型型循循环环结结构构在在每每次次执执行行循循环环体体前前对对控控制制循循环环条条件件进进行行判判断断,当当条条件件满满足足时时执执行行循循环环体体,不满足则停止不满足则停止.例例4、设计一算法、设计一算法,求和求和:
1+2+3+100.算法步骤:
算法步骤:
第一步:
第一步:
第二步:
第二步:
第三步:
第三步:
程序框图:
程序框图:
当型循环结构当型循环结构v开始开始vi=1vs=0否否v输出输出s”v结束结束vs=s+i是是vi=i+1直到循环结构直到循环结构v开始开始vs=0vi100?
v结束结束v输出输出ssv是是vi=1vs=s+ivi=i+1v否否北京获得了北京获得了2008年第年第29届奥林匹克运届奥林匹克运动会主办权动会主办权.你知道在申办奥运会的最后阶你知道在申办奥运会的最后阶级级,国际奥委会是如何通过投票决定主办权国际奥委会是如何通过投票决定主办权归属的吗归属的吗?
用怎样的算法结构表述上面的操作过程用怎样的算法结构表述上面的操作过程?
算法步骤:
算法步骤:
第一步第一步:
投票投票;第第二二步步:
统统第第一一步步计计票票数数,如如果果有有一一个个城城市市得得票票超超过过总总票票数数的的一一半半,那那么么该该城城市市就就获获得得主主办办权权,执执行行第第三三步步,否否则则淘淘汰汰得得票票数数最最少少的城市的城市,返回第一步返回第一步;第三步第三步:
宣布主办城市宣布主办城市.开始开始投票投票有一个城市有一个城市得票数超过总票得票数超过总票数的一半数的一半输出该城市输出该城市结束结束淘汰得票数淘汰得票数最少的城市最少的城市YN在在许许多多算算法法中中,需需要要对对问问题题的的条条件件作作出出逻逻辑辑判判断断,判判断断后后依依据据条条件件是是否否成成立立而而进进行行不不同同的的处处理理方方式式,这这就就需需要要用用条条件件结结构构来实现算法来实现算法.2、阅读下面的程序框图,若输出的、阅读下面的程序框图,若输出的s=57,则判断框内为(,则判断框内为()开始开始S=1,k=1K=k+1s=2s+k输出输出s结束结束YN答案:
K4?
或s57?
.3、程序框图的画法输入精确度输入精确度d和初始值和初始值a,ba=mv是是v否否vf(a)f(m)0?
va-bd或或f(m)=0?
v第三步第三步v第四步第四步v输出输出mv否否v是是小结:
1、掌握程序框的画法。
、掌握程序框的画法。
2、了解什么是程序框图,知道学习程序、了解什么是程序框图,知道学习程序框图的意义。
框图的意义。
3、构成程序框图的图形符号及其功能。
、构成程序框图的图形符号及其功能。
4、算法的三种基本逻辑结构的概念和应用。
、算法的三种基本逻辑结构的概念和应用。
5、算法的三种基本逻辑结构之间的联系和、算法的三种基本逻辑结构之间的联系和区别。
区别。
作业:
作业:
P20习题1.1A组3题。
思考:
画出解不等式思考:
画出解不等式ax+b0(ab0)的的程序框图程序框图