资源预览内容
第1页 / 共29页
第2页 / 共29页
第3页 / 共29页
第4页 / 共29页
第5页 / 共29页
第6页 / 共29页
第7页 / 共29页
第8页 / 共29页
第9页 / 共29页
第10页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1.2.3 算法基本语句算法初步温故而知新温故而知新1、顺序结构常用的程序语言和格式、顺序结构常用的程序语言和格式2、条件结构常用的程序语言和格式、条件结构常用的程序语言和格式输入语句输入语句 INPUT “提示文字提示文字”;变量列表;变量列表输出语句输出语句 PRINT “提示文字提示文字”;变量列表;变量列表赋值语句赋值语句 变量变量=表达式表达式(1) IF 条件成立条件成立 THEN 语句语句1ELSE 语句语句2END IF(2) IF 条件成立条件成立 THEN 语句语句END IF循环结构的定义:循环结构的定义: 在一些算法中,从某处开始,按照一定条件,反复执行在一些算法中,从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构。某一处理步骤的情况,这就是循环结构。 反复执行的处理步骤称为循环体。反复执行的处理步骤称为循环体。两种循环结构有什么差别?两种循环结构有什么差别?AP成立成立不成立不成立While(当型)循环(当型)循环 成立成立AP不成立不成立Until(直到型)循环)循环 成立成立AP不成立不成立AP成立成立不成立不成立While(当型)循环)循环Until(直到型)循环)循环两种循环结构有什么差别?两种循环结构有什么差别?先执行循环体,然后再检查条先执行循环体,然后再检查条件是否成立,如果不成立就重件是否成立,如果不成立就重复执行循环体,直到条件成立复执行循环体,直到条件成立退出循环。退出循环。先判断指定的条件是否为真,先判断指定的条件是否为真,若条件为真,执行循环条件,若条件为真,执行循环条件,条件为假时退出循环。条件为假时退出循环。先执行先执行 后判断后判断先判断先判断 后执行后执行循环结构循环结构AP成立成立不成立不成立While(当型)循环(当型)循环算法中的循环结构是由循环语句来实现的。算法中的循环结构是由循环语句来实现的。 成立成立AP不成立不成立Until(直到型)循环)循环两种循环语句:两种循环语句:WHILE 条件条件 循环体循环体WEND(1)WHILE语句的一般格式:语句的一般格式: 当计算机遇到当计算机遇到WHILE语句时,先判断条件的真假,如语句时,先判断条件的真假,如果条件符合,就执行果条件符合,就执行WHILE与与WEND之间的循环体;然之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止这个过程反复进行,直到某一次条件不符合为止.这时,这时,计算机将不执行循环体,直接跳到计算机将不执行循环体,直接跳到WEND语句后,接着执语句后,接着执行行WEND之后的语句之后的语句.也叫也叫“前测试型前测试型”循环循环循环体循环体满足条件?满足条件?是是否否While(当型)循环(当型)循环练习、根据练习、根据1.1.2例例3中的程序框图,用中的程序框图,用WHILE编写编写 计算机程序来计算计算机程序来计算1+2+100的值的值i=100?i=1开始输出sum结束否是sum=0i=i+1sum=sum+ii=1sum=0WHILE i100PRINT sumENDi=1开始开始结束结束sum=0输出输出sumi=i+1sum=sum+ii100?否否是是程序框图:程序框图:程序:程序:例例8 :用描点法作函数:用描点法作函数 y=x3+3x2-24x+30的图象时,需的图象时,需要求出自变量和函数的一组对应值,编写程序,要求出自变量和函数的一组对应值,编写程序,连续输连续输入入11个值个值:-5,-4,-3,-2,-1,0,1,2,3,4,5时的时的函数值。函数值。算法:算法:S1:输入一个自变量:输入一个自变量X 值值S2:计算:计算y=x3+3x2-24x+30S3:输出:输出y开始开始输入输入X y=x3+3x2-24x+30输出输出y结束结束程序框图:程序框图:S4:记录输入的次数记录输入的次数nS5:判断输入的次数是否大判断输入的次数是否大于于11,若是若是,结束算法结束算法,否则否则,返回返回S1.n=1n11YNn=n+1思考思考3:图图1.1-2,用按照算法执行的顺序,把程序,用按照算法执行的顺序,把程序框图中的内容转化为相应的程序语句。框图中的内容转化为相应的程序语句。开始输入nflag=1n2?d=2是d整除n?flag=0d2d=2输入nd2 THEN d=2 WHILE dn-1或或r=0?r=0?n不是质数不是质数n是质数是质数结束结束否否是是i=2Input “n=“;ni=2Do r= n mod i i=i+1 loop until in-1 or r=0 if r=0 then print “n不是质数不是质数” else print ”n是质数是质数“ end ifend练习练习 P231.根据你画出的用二分法求方程根据你画出的用二分法求方程x2-2=0的的 近似根的程序框图,写出相应的程序语句近似根的程序框图,写出相应的程序语句。2.编写程序,计算函数编写程序,计算函数f(x)=x2-3x+5当当x=1,2, 3,,20时的函数值。时的函数值。3.编写一个程序,输入正整数编写一个程序,输入正整数n,计算它的,计算它的 阶乘阶乘n!(n!=n*(n-1)*3*2*1)练习练习 P231.根据你画出的用二分根据你画出的用二分 法求方程法求方程x2-2=0的的 近似根的程序框图,近似根的程序框图, 写出相应的程序语句写出相应的程序语句。开始x1=1,x2=2c=0.005输出xf(x1)f(x)0?否是x1=xx2=x|x1-x2|c?是否结束f(x)=0?否是练习练习 P23开始x1=1,x2=2c=0.005输出xf(x1)f(x)0?否是x1=xx2=x|x1-x2|c?是否结束f(x)=0?否是x1=1x2=2c=0.005DO X=(X1+X2)/2 f(x1)=x12-2 f(x)=x2-2 IF f(x)=0 THEN PRINT 方程根为:方程根为:;x ELSE IF f(x1)*f(x)0 THEN x2=x ELSE x1=x END IF END IFLOOP UNTIL ABS(x1-x2)=cPRINT 方程的近似根为:方程的近似根为:;xEND练习练习 P232.编写程序,计算函数编写程序,计算函数f(x)=x2-3x+5当当x=1,2, 3,,20时的函数值。时的函数值。x=1WHILE xnPRINT 这个数的阶乘为:这个数的阶乘为:;tEND练习巩固1 1、设计一个算法框图:逐个输出、设计一个算法框图:逐个输出1 12 2,2 22 2,3 32 2,n n2 2,并,并写出相应的程序。写出相应的程序。INPUT ni = 0WHILE i = nEND结束i=0开始i = i+1 : t=i2i=n?否是PRINT tINPUT n2、设计一个算法框图:求满足12 3 n10000的最小正整数n,并写出相应的程序。结束输出ii=0,Sum=0开始i = i + 1Sum=Sum+iSum10000?否是i = 0sum = 0DOi = i + 1sum = sum + iLOOP UNTIL sum10000PRINT iEND小小 结结WHILE 条件条件 循环体循环体WENDDO 循环体循环体LOOP UNTIL 条件条件两种循环语句:两种循环语句:循环体循环体满足条件?满足条件?是是否否(1) While(当型)循环(当型)循环(2)Until(直到型)循环(直到型)循环循环体循环体满足条件?满足条件?否否是是导与练导与练P27变式变式1-1: 设计一个计算设计一个计算135799的程序的程序开始开始S=1i=3i99输出输出s开始开始S=s*ii=i+2YNS=1i=3While i=99S=s*ii=i+2wendPrint send导与练导与练P27变式变式2-1:写出求所有立方小于:写出求所有立方小于104的正整数的程序的正整数的程序开始开始i=1n=i3n10000输出输出ii=i+1结束结束YNi=1n=i3while n104print ii=i+1n=i3wendend 导与练导与练P27#6:根据条件,把程序框图补充完整,求:根据条件,把程序框图补充完整,求1-1000内所有的偶数的和。内所有的偶数的和。开始开始i=2,s=0i1000输出输出s结束结束YNs=s+ii=i+2导与练导与练P28#7:根据下面的程序,画出其算法的程序框图:根据下面的程序,画出其算法的程序框图:i=-1WHILE i=1X=iy=x*x*xi=i+0.2PRINT “y=:” ; yWENDEND开始开始i=-1i=1X=iy=x*x*xi=i+0.2输出输出y结束结束YN 导与练导与练P28#8:一球:一球 从从100m的高度落下,每次落地后又跳的高度落下,每次落地后又跳回原高度的一半,再落下,在第回原高度的一半,再落下,在第10次落地时,小球共经过多少路程次落地时,小球共经过多少路程?开始开始S=0h=100i=1i=100s=s-100输出输出s结束结束s=s+2hh=h/2i=i+1NYS=0h=100i=1WHILE i=300输出输出n结束结束YNn=1996P=0.05a=200Do a=a*(1+p) n=n+1loop until a=100Print nend导与练导与练P28#4:根据下列程序画出相应的程序框图:根据下列程序画出相应的程序框图:S=1n=1WHILE S=1000 S=S*a n=n+1WENDPrint n-1end开始开始S=1n=1S=1000S=s*an=n+1输出输出n-1结束结束YN
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号