《循环语句》课件3.ppt
温故而知新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中的程序框图,编写中的程序框图,编写 计算机程序来计算计算机程序来计算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?否否是是程序框图:程序框图:程序:程序:练习练习1.根据你画出的用二分法求方程根据你画出的用二分法求方程x2-2=0的的 近似根的程序框图,写出相应的程序语句近似根的程序框图,写出相应的程序语句。2.编写程序,计算函数编写程序,计算函数f(x)=x2-3x+5当当x=1,2, 3,,20时的函数值。时的函数值。3.编写一个程序,输入正整数编写一个程序,输入正整数n,计算它的,计算它的 阶乘阶乘n!(n!=n*(n-1)*3*2*1)练习练习1.根据你画出的用二分根据你画出的用二分 法求方程法求方程x2-2=0的的 近似根的程序框图,近似根的程序框图, 写出相应的程序语句写出相应的程序语句。开始x1=1,x2=2c=0.005输出x122xxx211()2f xx2( )2f xxf(x1)f(x)0?否是x1=xx2=x|x1-x2|c?是否结束f(x)=0?否是练习练习开始x1=1,x2=2c=0.005输出x122xxx211()2f xx2( )2f xxf(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练习练习2.编写程序,计算函数编写程序,计算函数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,并写出相应的并写出相应的QBASICQBASIC程序。程序。INPUT ni = 0WHILE i = nEND结束i=0开始i = i+1 , t=i2i=n?否是PRINT tINPUT n2 2、设计一个算法框图:求满足、设计一个算法框图:求满足12 3 n10000的最小正整数的最小正整数n n,并写出相应的,并写出相应的QBASIC程序。程序。结束输出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(直到型)循环(直到型)循环循环体循环体满足条件?满足条件?是是否否