流程图第二课时知识回忆1、程序框图的概念2、程序框图的图示和意义3、顺序结构和条件结构的特点4、作业分析例3设计一算法,求和:1+2+3+…+100第一步:确定首数a,尾数b,项数n;第二步:利用公式“总和=(首数+尾数)×项数/2”求和;第三步:输出求和结果。算法1:开始结束输入a,b,nSum=(a+b)*n/2输出Sum例3设计一算法,求和:1+2+3+…+100算法2:第一步:从1开始将自然数1、2、3、…、100逐个相加;第二步:输出累加结果。思考:1、上边的式子有怎样的规律呢?Sum=0Sum=Sum+1Sum=Sum+2Sum=Sum+3…Sum=Sum+1002、怎么用程序框图表示呢?i=i+1Sum=Sum+i4、如何使程序结束?3、i有什么作用?Sum呢?Sum=Sum+ii=i+1Sum=Sum+i解决方法就是加上一个判断,判断是否已经加到了100,如果加到了则退出,否则继续加。试分析两种流程的异同点直到型结构当型结构i=i+1Sum=Sum+i是否i=i+1Sum=Sum+i否是i<100?i>=100?请填上判断的条件。最后的结果结束i=i+1Sum=Sum+ii<100?输出Sum否是i=0,Sum=0开始结束输出Sumi=0,Sum=0开始i=i+1Sum=Sum+ii>=100?否是结束i=i+1Sum=Sum+ii<100?输出Sum否是i=0,Sum=0开始步骤A步骤B思考:将步骤A和步骤B交换位置,结果会怎样?能达到预期结果吗?为什么?要达到预期结果,还需要做怎样的修改?答:达不到预期结果;当i=100时,退出循环,i的值未能加入到Sum中;修改的方法是将判断条件改为i<101例2用二分法求解方程求关于x的方程x2-2=0的根,精确到0.005算法描述第一步令f(x)=x2-2,以为f(1)<0,f(2)>0,所以设x1=1,x2=2第二步令m=(x1+x2)/2,判断f(m)是否为0,若是,则m为所求,否则,则继续判断f(x1)·f(m)大于0还是小于0。第三步若f(x1)·f(m)>0则令x1=m,否则x2=m。第四步判断|x1-x2|<0.005是否成立?若是则x1、x2之间人任意值均为满足条件的近似值;否则返回第二步。开始x1=1:x2=2f(x)=x2-2x1=mx2=mm=(x1+x2)/2x1=mx2=mf(m)=0?f(x1)f(m)>0|x1-x2|<0.005结束输出所求的近似根mm=(x1+x2)/2是否否是否是流程图表示分析在整个程序框图中,哪些部分是顺序结构、条件结构、循环结构练习巩固1、设计一算法,求积:1×2×3×…×100,画出流程图结束输出Sumi=0,Sum=1开始i=i+1Sum=Sum*ii>=100?否是思考:该流程图与前面的例3中求和的流程图有何不同?2、设计一算法输出1~1000以内能被3整除的整数结束i=i+1i<1000?输出i否是i=0开始3整除i?否是算法:S1:确定i的初始值为0;S2:判断i是否等于1000,若是则程序结束,否则进入S3;S3:使i增加1,判断i是否能被3整除,若能输出i,并返回S2;否则直接返回S2小结1、循环结构的特点2、循环结构的框图表示3、循环结构有注意的问题避免死循环的出现,设置好进入(结束)循环体的条件。当型和直到型重复同一个处理过程课外作业P11练习2习题1.1A组第2题