数学:1.2.3《基本算法语句-循环语句》PPT课件(新人教A版必修3)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1.2.3《基本算法语句-循环语句》温故而知新1、顺序结构常用的程序语言和格式2、条件结构常用的程序语言和格式输入语句INPUT“提示文字”;变量列表输出语句PRINT“提示文字”;变量列表赋值语句变量=表达式(1)IF条件成立THEN语句1ELSE语句2ENDIF(2)IF条件成立THEN语句ENDIF例6编写程序,使得任意输入3个整数按大到小的顺序输出。算法分析:算法思想:3个数两两比较,确定大小。按a、b、c输入,要按a、b、c输出,关键要找到最大值,将它赋值给a,中值赋给b,最小值赋给c。第一步输入3个整数a、b、c第二步将a与b比较,并把小者赋给b,大的赋给a;第三步将a与c比较,并把小者赋给c,大的赋给a第四步将b与c比较,并把小者赋给c,大的赋给b第五步按顺序输出a,b,cINPUT“a,b,c=”;a,b,cIFbaTHENt=aa=bb=tENDIFIFcaTHENt=aa=cc=tENDIFIFcbTHENt=bb=cc=tENDIFPRINTa,b,cEND相应的QBASIC程序:开始t=a,a=b,b=tt=a,a=c,c=tt=b,b=c,c=t输入a,b,c输入a,b,cb>a?c>a?c>b?结束是是否否是否对应的流程图练习巩固开始输入a,b,ca+b>c,a+c>b,b+c>a是否同时成立?存在这样的三角形不存在这样的三角形结束否是(1)该程序框图所表示的算法是作用是什么?并根据程序框图写出相应的程序。1.2.3循环语句循环结构的定义:在一些算法中,从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构。反复执行的处理步骤称为循环体。两种循环结构有什么差别?AP成立不成立While(当型)循环成立AP不成立Until(直到型)循环成立AP不成立AP成立不成立While(当型)循环Until(直到型)循环两种循环结构有什么差别?先执行循环体,然后再检查条件是否成立,如果不成立就重复执行循环体,直到条件成立退出循环。先判断指定的条件是否为真,若条件为真,执行循环条件,条件为假时退出循环。先执行后判断先判断后执行循环结构AP成立不成立While(当型)循环算法中的循环结构是由循环语句来实现的。成立AP不成立Until(直到型)循环两种循环语句:WHILE条件循环体WEND(1)WHILE语句的一般格式:当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.也叫“前测试型”循环循环体满足条件?是否While(当型)循环Until(直到型)循环DO循环体LOOPUNTIL条件(2)UNTIL语句的一般格式:也叫“后测试型”循环循环体满足条件?是否思考1:参照直到型循环结构,说说计算机是按怎样的顺序执行UNTIL语句的?思考2:用UNTIL语句编写计算机程序,来计算1+2+…+100的值.练习、根据1.1.2例3中的程序框图,编写计算机程序来计算1+2+…+100的值i=100?i=1开始输出sum结束否是sum=0i=i+1sum=sum+ii=1sum=0WHILEi=100sum=sum+ii=i+1WENDPRINTsumEND程序:思考2:用UNTIL语句编写计算机程序,来计算1+2+…+100的值.i=1sum=0DOsum=sum+ii=i+1LOOPUNTILi100PRINTsumENDi=1开始结束sum=0输出sumi=i+1sum=sum+ii100?否是程序框图:程序:思考3:图1.1-2,用按照算法执行的顺序,把程序框图中的内容转化为相应的程序语句。开始输入nflag=1n2?d=2是d整除n?flag=0d=n-1且flag=1?flag=1?n是质数结束是d=d+1否否n不是质数否是否是(1)n=5开始Flag=1n2d=2输入nd=n-1且flag=1?d整除n?Flag=0Flag=1?结束d=d+1是是是否否是否否(1)(2)(2)n=48否INPUT“n=”;nflag=1IFn2THENd=2WHILEd=n-1ANDflag=1IFnMODd=0THENflag=0ELSEd=d+1ENDIFWENDENDIFIFflag=1THENPRINTn;是质数.ELSEPRINTn;不是质数.ENDIFEND思考题:判断质数的算法是否还有所改进?练习P241.根据你画出的用二分法求方程x2-2=0的近似根的程序框图,写出相应的程序语句。2.编写程序,计算函数f(x)=x2-3x+5当x=1,2,3,…,20时的函数值。3.编写一个程序,输入正整数n,计算它的阶乘n!(n!=n*(n-1)*…*3*2*1)练习P241.根据你画出的用二分法求方程x2-2=0的近似根的程序框图,写出相应的程序语句。开始x1=1,x2=2c=0.005输出x122xxx211()2fxx2()2fxxf(x1)f(x)0?否是x1=xx2=x|x1-x2|c?是否结束f(x)=0?否是练习P24开始x1=1,x2=2c=0.005输出x122xxx211()2fxx2()2fxxf(x1)f(x)0?否是x1=xx2=x|x1-x2|c?是否结束f(x)=0?否是x1=1x2=2c=0.005DOX=(X1+X2)/2f(x1)=x1^2-2f(x)=x^2-2IFf(x)=0THENPRINT方程根为:;xELSEIFf(x1)*f(x)0THENx2=xELSEx1=xENDIFENDIFLOOPUNTILABS(x1-x2)=cPRINT方程的近似根为:;xEND练习P242.编写程序,计算函数f(x)=x2-3x+5当x=1,2,3,…,20时的函数值。x=1WHILEx=20y=x^2-3*x+5PRINTx=;xPRINTy=;yx=x+1WENDEND练习P243.编写一个程序,输入正整数n,计算它的阶乘n!(n!=n*(n-1)*…*3*2*1)t=1i=1INPUT请输入n的值:;nDOt=t*ii=i+1LOOPUNTILinPRINT这个数的阶乘为:;tEND练习巩固1、设计一个算法框图:逐个输出12,22,32,……,n2,并写出相应的QBASIC程序。INPUTni=0WHILEini=i+1t=i^2PRINTtWENDENDINPUTni=0DOi=i+1t=i^2PRINTtLOOPUNTILi=nEND结束i=0开始i=i+1:t=i^2i=n?否是PRINTtINPUTn2、设计一个算法框图:求满足1+2+3+…+n>10000的最小正整数n,并写出相应的QBASIC程序。结束输出ii=0,Sum=1开始i=i+1Sum=Sum*iSum10000?否是i=0sum=0DOi=i+1sum=sum+iLOOPUNTILsum10000PRINTiEND小结WHILE条件循环体WENDDO循环体LOOPUNTIL条件两种循环语句:循环体满足条件?是否(1)While(当型)循环(2)Until(直到型)循环循环体满足条件?是否

1 / 24
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功