1.1.2程序框图算法中从上一步骤指向下一步骤(连接程序框)流程线判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”判断框赋值、计算处理框(执行框)表示一个算法输入输出信息输入,输出框表示一个算法的起始与结束起止框含义名称图形符号连接点连接程序框图的两部分输入ni=2r=0?n不是质数n是质数否是算法三种基本逻辑结构顺序结构开始结束求n除以i的余数ri的值增加1,仍用i表示i>n-1或r=0否是条件结构条件结构循环结构算法三种基本逻辑结构(顺序结构、条件结构、循环结构)流程图表示,实例,程序演示:顺序、条件、循环三种基本的逻辑结构:1.顺序结构:最简单的算法结构,是指由若干个依次执行的步骤组成的。任何算法都离不开顺序结构。步骤n步骤n+1顺序结构可以用程序框图表示为(2).条件结构:一个算法的执行过程中会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向.常见的条件结构可以用程序框图表示为下面两种形式满足条件?步骤AB是否满足条件?步骤A是否循环体满足条件?是否是否循环体满足条件?While(当型)循环Until(直到型)循环(3)循环结构:需要重复执行同一操作的结构称为循环结构.即从某处开始按照一定的条件反复执行某一处理步骤.反复执行处理的步骤称为循环体.注:循环结构一定包含条件结构.用于确定何时终止循环体先执行后判断先判断后执行i≤100?i=1开始输出S结束否是S=0i=i+1S=S+i例6、设计一个计算1+2+3+……+100的值的算法,并画出程序框图。1.i=1;2.S=0;3.若i≤100成立,则执行第4步;否则,输出S,结束算法。4.S=S+I;5.i=i+1;返回第3步S=1+2+3+4+5+6+........+100.第一次循环s=第二次循环s=第三次循环s=分析:初值s=0,i=10+1=1,i=21+2=3,i=33+3=6S=1S=1+2S=1+2+3……S=1+2+3+…100i>100?i=1开始结束否是S=0i=i+1S=S+1输出S思考?如何用自然语言表述右图中的算法?1.S=0;2.i=1;3.S=S+i;4.i=i+1;5.如果i大于100,结束算法,得到S值,否则返回重新执行第3步,第4步,第5步.6.S=1+2+3+4+5+6+........+100.例7某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%,设计一个程序框图,输出预计年生产总值超过300万元的最早年份。第一步,输入2005年的年生产总值第二步,计算下一年的年生产总值;第三步,判断所得的结果是否大于300,若是,则输出该年的年份,否则,返回第二步。算法步骤:(1)确定循环体(2)初始化变量(3)设定循环控制条件设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则循环体为t=0.05a,n=n+1,a=a+t,若将2005年的年生产总值计算的起始点,则n的初始值为2005,a的初始值为200。当“年生产总值超过300万元”时终止循环,所以可通过判断“a>300”是否成立来控制循环。开始结束n=2005a>300?输出n否是a=200t=0.05aa=a+tn=n+1程序框图:思考?左图是包含直到型循环结构的程序框图,你能画出当型循环结构框图吗?开始结束n=2005a≤300?输出n否是a=200t=0.05aa=a+tn=n+1程序框图:例2用二分法设计一个求方程的近似正根的算法220x22.x第一步:令fx给定精确度d2ab第三步:令m()()0,fafm第四步:若则含零点的区间为[a,m];否则含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b].第五步:判断[a,b]的长度是否小于d或f(m)是否行于0.若是,则m是方程的近似解;否则,返回第三步解()()0fafb第二步:确定区间[a,b],满足b=mf(a)f(m)<0?a=m是否|a-b|<d或f(m)=0?否是第四步第三步输出mf(x)=x2-2输入精确度d和初始值a,b2abmf(x)=x2-2输入精确度d和初始值a,b2abmb=mf(a)f(m)<0?a=m是否是|a-b|<d或f(m)=0?输出m否开始结束课堂练习三种结构的综合应用:P20、练习