《程序框图与算法的基本逻辑结构精.ppt》由会员分享,可在线阅读,更多相关《程序框图与算法的基本逻辑结构精.ppt(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、程序框图与算法的基本逻辑结构1第1页,本讲稿共21页问题提出问题提出 1.1.算法的基本逻辑结构有哪几种?用算法的基本逻辑结构有哪几种?用程序框图分别如何表示?程序框图分别如何表示?步骤步骤n步骤步骤n+1顺序结构顺序结构2第2页,本讲稿共21页条件结构条件结构满足条件?满足条件?步骤步骤A步骤步骤B是是否否(1)(1)满足条件?满足条件?步骤步骤A是是否否(2)(2)3第3页,本讲稿共21页算法的循环结构算法的循环结构思考:思考:在算法的程序框图中,由按照一定的条件反复执在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为行的某些步骤组成的逻辑结构,称为循环结构循环结构
2、,反复执,反复执行的步骤称为行的步骤称为循环体循环体,那么循环结构中一定包含条件,那么循环结构中一定包含条件结构吗?结构吗?求求n n除以除以i i的余数的余数r ri=i+1i=i+1in-1in-1或或r=0?r=0?是是否否循环结构循环结构4第4页,本讲稿共21页循环结构循环结构循环体循环体满足条件?满足条件?是是否否直到型直到型循环体循环体满足条件?满足条件?是是否否当型当型5第5页,本讲稿共21页循环体循环体满足条件?满足条件?是是否否 这种循环结构称为这种循环结构称为直到型循环结构直到型循环结构,你能,你能指出直到型循环结构的特征吗?指出直到型循环结构的特征吗?在执行了一次循环体后
3、,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.6第6页,本讲稿共21页循环体循环体满足条件?满足条件?是是否否这种循环结构称为这种循环结构称为当型循环结构当型循环结构,你能指,你能指出当型循环结构的特征吗?出当型循环结构的特征吗?在每次执行循在每次执行循环体前,对条环体前,对条件进行判断,件进行判断,如果如果条件满足,条件满足,就执行循环体就执行循环体,否则终止循环否则终止循环.7第7页,本讲稿共21页注意:注意:1、循环结构要在某个条件下终止循环,这就需要条件结构来判断。、循环结构要在某个条件下终止循环,这就需要条件结构来判断。因此,因此,循环结构中一定包含条件
4、结构循环结构中一定包含条件结构,但不允许,但不允许“死循环死循环”。2、在循环结构中都有一个计数变量和累加变量在循环结构中都有一个计数变量和累加变量(或累乘变量或累乘变量)。计。计数变量用于记录循环次数,累加(或累乘)变量用于输出结果。数变量用于记录循环次数,累加(或累乘)变量用于输出结果。计数变量和累加(或累乘)变量一般是同步执行的,累加或累乘计数变量和累加(或累乘)变量一般是同步执行的,累加或累乘一次,计数一次。一次,计数一次。循环结构循环结构循环体循环体满足条件?满足条件?是是否否直到型直到型循环体循环体满足条件?满足条件?是是否否当型当型8第8页,本讲稿共21页第一步:确定首数a,尾数
5、b,项数n;第二步:利用公式“S=n(a+b)/2”求和;第三步:输出求和结果。算法1:开始开始结束结束输入输入a,b,nS=n(a+b)/2输出输出S例1:设计一个计算1+2+3+100的值的算法,并画出程序框图.9第9页,本讲稿共21页第1步,011.第2步,123.第3步,336.第4步,6410.第100步,49501005050.算法2:第一步,令i1,S0.第二步,若i 100成立,则执行第三步;否则,输出S,结束算法.第三步,SSi.第四步,i=i+1,返回第二步.当型循环结构当型循环结构例1:设计一个计算1+2+3+100的值的算法,并画出程序框图.开始开始i=1结束结束输出输
6、出S否否是是S=0S=S+ii100?i=i+110第10页,本讲稿共21页开始开始i=1i100?是是输出输出S结束结束S=0i=i+1S=S+i否否思考思考:用直到循环结构,上述算法的程序框图如何表示?用直到循环结构,上述算法的程序框图如何表示?开始开始i=1结束结束输出输出S否否是是S=0S=S+ii100?i=i+1当型循环结构当型循环结构直到循环结构直到循环结构11第11页,本讲稿共21页结束i=i+1Sum=Sum+ii=100?否是循环结构直到型结构当型结构 例6 设计一个计算1+2+3+100的值的算法,并画出程序框图.12第12页,本讲稿共21页i=i+1Sum=Sum+i
7、解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。直到型结构当型结构i=i+1Sum=Sum+i是否i=i+1Sum=Sum+i否是i100?i=100?i=100?请填上判断的条件。在解题的过程中,用累加变量在解题的过程中,用累加变量S S表示表示每一步的计算结果,即把每一步的计算结果,即把S+iS+i的结果仍记的结果仍记为为S S,从而把第,从而把第i i步表示为步表示为S=SS=Si,其中其中S S的初始值为的初始值为0 0,i i依次取依次取1 1,2 2,100.100.由于由于i i同时记录了循环的次数,所以也称同时记录了循环的次数,所以也称为计数变
8、量为计数变量.循环结构中都有一个计数变量和累加变量,循环结构中都有一个计数变量和累加变量,计数变量用以记录循环次数,同时它的取值还计数变量用以记录循环次数,同时它的取值还用于判断循环是否终止,累加变量用于输出结用于判断循环是否终止,累加变量用于输出结果,累加变量和计数变量一般是同步执行的,果,累加变量和计数变量一般是同步执行的,累加一次,计数一次累加一次,计数一次.13第13页,本讲稿共21页思考:思考:P15.P15.设计一个算法,表示输出设计一个算法,表示输出1 1,1 12 2,1 12 23 3,1 12 23 3(n-1)+n(nN*)(n-1)+n(nN*)的过程的过程.结束结束开
9、始开始S=0S=0i=1i=1S=S+iS=S+ii=i+1i=i+1inin?Y YN N输出输出S 第一步,令i=1,S=0.第二步,输入n.第三步,计算S=S+i.第四步,计算i=i+1.第五步,则输出S.第六步,判断in是否成立,若是,结束算法;否则返回第二步.输入输入n例题变式:名师一号例题变式:名师一号13页页 例例114第14页,本讲稿共21页循环结构循环结构循环体循环体满足条件?满足条件?是是否否直到型直到型循环体循环体满足条件?满足条件?是是否否当型当型15第15页,本讲稿共21页 例例2 2:某工厂某工厂20052005年的年生产总值为年的年生产总值为200200万元,技术
10、革新后预计以后每年的年生万元,技术革新后预计以后每年的年生产总值都比上一年增长产总值都比上一年增长5%.5%.设计一个程序框设计一个程序框图,输出预计年生产总值超过图,输出预计年生产总值超过300300万元的最万元的最早年份早年份.第三步,判断所得的结果是否大于第三步,判断所得的结果是否大于300.300.若是,则输出该年的年份;若是,则输出该年的年份;否则,返回第二步否则,返回第二步.第一步,第一步,输入输入20052005年的年生产总值年的年生产总值.第二步,计算下一年的年生产总值第二步,计算下一年的年生产总值.算法分析算法分析:16第16页,本讲稿共21页(3 3)控制条件:当)控制条件
11、:当“a“a300”300”时终止循环时终止循环.(1 1)循环体:设)循环体:设a a为某年的年生产总值,为某年的年生产总值,t t为年生产总值的年增长量,为年生产总值的年增长量,n n为年份,为年份,则则t=0.05at=0.05a,a=a+ta=a+t,n=n+1.n=n+1.(2 2)初始值:)初始值:n=2005n=2005,a=200.a=200.循环结构循环结构:第三步,判断所得的结果是否大于第三步,判断所得的结果是否大于300.300.若是,则输出该年的年份;若是,则输出该年的年份;否则,返回第二步否则,返回第二步.第一步,第一步,输入输入20052005年的年生产总值年的年生
12、产总值.第二步,计算下一年的年生产总值第二步,计算下一年的年生产总值.算法分析算法分析:开始开始n=2005a=200t=0.05aa=a+tn=n+1a300?结束结束输出输出n是是否否程序框图程序框图:17第17页,本讲稿共21页结束开始输入na=200t=0.05aa=a+tn=n+1a300?Y Yn=2005N N结束开始输入na=200t0.05aaa+tnn+1a300?N Nn=2005Y Y直到型当型18第18页,本讲稿共21页输入x开始x3?y=1.2x+1.4y=5输出y结束N NY YP.20习题习题A组第组第3题题 算法步骤:第一步,输入人数x,设收取的卫生费为y元.
13、第二步,判断x与3的大小,若x3,则费用为m=5(x-3)1.2=1.2x+1.4;若x3,则费用为m5.第三步,输出m.19第19页,本讲稿共21页开始输入50米跑成绩rr6.8n9?结束NYYNP.20习题习题1.1B组第组第2题题 算法步骤:第一步,令计算变量n1.第二步,输入一个成绩r,判断r与6.8的大小,若r6.8,则执行下一步;若r6.8,则输出r,并执行下一步.第三步,令nn1.第四步,判断计数变量n与成绩个数9的大小,若n9,则返回第二步,若n9,则结束算法.n1nn1输出r20第20页,本讲稿共21页1.对任意正整数n,的值,并画出程序框图.结束开始输入一个正整数n输出S的值S=0i=1S=S+1/ii=i+1inY YN N设计一个算法求练习巩固21第21页,本讲稿共21页