问题提出1.两种条件语句的一般格式分别是什么?格式2:IF条件THEN语句体1ELSE语句体2ENDIF格式1:IF条件THEN语句体ENDIF知识探究(一):直到型循环语句思考1:直到型循环结构的程序框图是什么?满足条件?是循环体否DO循环体LOOPUNTIL条件你能说明计算机在执行上述语句时是怎样工作的吗?思考2:该循环结构对应的循环语句的一般格式设定为:满足条件?是循环体否先执行一次DO和UNTIL之间的循环体,再对UNTIL后的条件进行判断.如果条件不符合,则继续执行循环体;然后再检查上述条件,如果条件仍不符合,则再次执行循环体,直到条件符合为止.这时,计算机将不执行循环体,而执行UNTIL语句之后的语句.DO循环体LOOPUNTIL条件满足条件?是循环体否思考3:计算1+2+3+…+100的值有如下算法:第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第四步,判断i100是否成立.若是,则输出S,结束算法;否则,返回第二步.你能利用UNTIL语句写出这个算法对应的程序吗?i=1S=0DOS=S+ii=i+1LOOPUNTILi100PRINTSEND第一步,令i=1,S=0.第二步,计算S+i,仍用S表示.第三步,计算i+1,仍用i表示.第四步,判断i100是否成立.若是,则输出S,结束算法;否则,返回第二步.思考4:在下面的程序运行中,计算机输出的结果是多少?x=20DOx=x-3LOOPUNTILx0PRINTxEND-1知识探究(二):当型循环语句思考1:当型循环结构的程序框图是什么?满足条件?否循环体是WHILE条件循环体WEND思考2:该循环结构对应的循环语句的一般格式设定为:循环体满足条件?是否你能说明计算机在执行上述语句时是怎样工作的吗?WHILE条件循环体WEND循环体满足条件?是否先对条件进行判断,如果条件符合,则执行WHILE和WEND之间的循环体;然后再检查上述条件,如果条件仍符合,则再次执行循环体,直到某一次条件不符合为止.这时,计算机将不执行循环体,而执行WEND语句之后的语句.思考3:计算1+2+3+…+100的值又有如下算法:第一步,令i=1,S=0.第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.第三步,S=S+i.第四步,i=i+1,返回第二步.你能利用WHILE语句写出这个算法对应的程序吗?i=1S=0WHILEi=100S=S+ii=i+1WENDPRINTSEND第一步,令i=1,S=0.第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.第三步,S=S+i.第四步,i=i+1,返回第二步.思考4:阅读下面的程序,你能说明它是一个什么问题的算法吗?x=1WHILEx∧21000PRINTxx=x+1WENDEND求满足x21000的所有正整数x的值.理论迁移例1已知函数y=x3+3x2-24x+30,写出连续输入自变量的11个取值,分别输出相应的函数值的程序.第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.第一步,输入自变量x的值.第二步,计算y=x3+3x2-24x+30.第三步,输出y.第四步,记录输入次数.算法分析:开始输入xy=x3+3x2-24x+30输出yn=1n=n+1n11?结束是否n=1DOINPUTxy=x∧3+3*x∧2-24*x+30PRINTyn=n+1LOOPUNTILn11END例2将用“二分法”求方程的近似解的程序框图转化为相应的程序.220(0)xx开始结束f(a)f(m)0?a=mb=m是否|a-b|d或f(m)=0?输出m是否f(x)=x2-2输入精确度d和初始值a,b2abm+=ENDINPUT“a,b,d=”;a,b,dDOm=(a+b)/2g=a∧2-2f=m∧2-2IFg*f0THENb=mELSEa=mENDIFLOOPUNTILABS(a-b)dORf=0PRINTm小结作业2.直到型循环语句在条件不符合时再执行循环体,当型循环语句在条件符合时再执行循环体.1.两种循环语句源于两种循环结构,直到型循环语句先执行循环体,再判断条件;当型循环语句先判断条件,再执行循环体.作业:P32练习:1,2.P33习题1.2A组:3.B组:2.