《1.2.3循环语句69785.ppt》由会员分享,可在线阅读,更多相关《1.2.3循环语句69785.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.2 1.2 基本算法语句基本算法语句 1.2.3 1.2.3 循环语句循环语句问题提出问题提出 1.1.两种条件语句的一般格式分别是怎两种条件语句的一般格式分别是怎样的?样的?格式格式2:2:IF IF 条件条件 THENTHEN 语句体语句体1 1ELSEELSE 语句体语句体2 2END IFEND IF格式格式1:1:IF IF 条件条件 THENTHEN 语句体语句体END IFEND IF 2.2.对于顺序结构、条件结构的算法对于顺序结构、条件结构的算法或程序框图,我们可以利用输入语句、或程序框图,我们可以利用输入语句、输出语句、赋值语句和条件语句写出其输出语句、赋值语句和条件语
2、句写出其计算机程序计算机程序.对于循环结构的算法或程序对于循环结构的算法或程序框图,要转化为计算机能够理解的算法框图,要转化为计算机能够理解的算法语言,我们必须进一步学习循环语句语言,我们必须进一步学习循环语句.知识探究(一)知识探究(一):直到型循环语句直到型循环语句 思考思考1:1:直到型循环结构的程序框图是怎直到型循环结构的程序框图是怎样的?样的?满足条件?满足条件?是是循环体循环体否否DODO 循环体循环体LOOP UNTIL LOOP UNTIL 条件条件你能说明计算机在执行上述语句时是怎你能说明计算机在执行上述语句时是怎样工作的吗样工作的吗?思考思考2:2:该循环结构对应的循环语句
3、的一该循环结构对应的循环语句的一般格式设定为:般格式设定为:满足条件?满足条件?是是循环体循环体否否 先执行一次先执行一次DODO和和UNTILUNTIL之间的循环体,再之间的循环体,再对对UNTILUNTIL后的条件进行判断后的条件进行判断.如果条件不符合,如果条件不符合,则继续执行循环体;然后再检查上述条件,则继续执行循环体;然后再检查上述条件,如果条件仍不符合,则再次执行循环体,直如果条件仍不符合,则再次执行循环体,直到条件符合为止到条件符合为止.这时,计算机将不执行循环这时,计算机将不执行循环体,而执行体,而执行UNTILUNTIL语句之后的语句语句之后的语句.DODO 循环体循环体L
4、OOP UNTIL LOOP UNTIL 条件条件满足条件?满足条件?是是循环体循环体否否思考思考3:3:计算计算1+2+3+1+2+3+100+100的值有如下算的值有如下算法法:第一步,令第一步,令i=1i=1,S=0.S=0.第二步,计算第二步,计算S+iS+i,仍用,仍用S S表示表示.第三步,计算第三步,计算i+1i+1,仍用,仍用i i表示表示.第四步,判断第四步,判断i100i100是否成立是否成立.若是,则若是,则 输出输出S S,结束算法;否则,返回,结束算法;否则,返回 第二步第二步.你能利用你能利用UNTILUNTIL语句写出这个算法对语句写出这个算法对应的程序吗?应的程
5、序吗?i=1i=1S=0S=0DODOS=S=S+iS+ii=i+1i=i+1LOOP UNTIL LOOP UNTIL i i100100PRINT SPRINT SENDEND第一步,令第一步,令i=1i=1,S=0.S=0.第二步,计算第二步,计算S+iS+i,仍用仍用S S表示表示.第三步,计算第三步,计算i+1i+1,仍用仍用i i表示表示.第四步,判断第四步,判断i100 i100 是否成立是否成立.若是,则若是,则 输出输出S S,结束算法;,结束算法;否则,返回第二步否则,返回第二步.思考思考4:4:在下面的程序运行中,计算机输在下面的程序运行中,计算机输出的结果是多少?出的结
6、果是多少?x=20 x=20DODOx=x-3x=x-3LOOP UNTILLOOP UNTIL x x0 0PRINT xPRINT xEND END-1-1知识探究(二)知识探究(二):当型循环语句当型循环语句 思考思考1:1:当型循环结构的程序框图是怎样的当型循环结构的程序框图是怎样的?满足条件?满足条件?否否循环体循环体是是WHILEWHILE 条件条件 循环体循环体WENDWEND 思考思考2:2:该循环结构对应的循环语句的该循环结构对应的循环语句的一般格式设定为:一般格式设定为:循环体循环体满足条件?满足条件?是是否否 你能说明计算机在执行上述语句时是你能说明计算机在执行上述语句时
7、是怎样工作的吗?怎样工作的吗?WHILEWHILE 条件条件 循环体循环体WENDWEND 循环体循环体满足条件?满足条件?是是否否 先对条件进行判断,如果条件符合,则先对条件进行判断,如果条件符合,则执行执行WHILEWHILE和和WENDWEND之间的之间的循环体循环体;然后再检查;然后再检查上述条件,如果条件仍符合,则再次执行循上述条件,如果条件仍符合,则再次执行循环体,直到某一次条件不符合为止环体,直到某一次条件不符合为止.这时,计这时,计算机将不执行循环体,而执行算机将不执行循环体,而执行WENDWEND语句之后语句之后的语句的语句.思考思考3:3:计算计算1+2+3+1+2+3+1
8、00+100的值又有如下的值又有如下算法算法:第一步,令第一步,令i=1i=1,S=0.S=0.第二步,若第二步,若i i100100成立,则执行第三成立,则执行第三 步;否则,输出步;否则,输出S S,结束算,结束算法法.第三步,第三步,S=S=S+iS+i.第四步,第四步,i=i+1i=i+1,返回第二步,返回第二步.你能利用你能利用WHILEWHILE语句写出这个算法对应的语句写出这个算法对应的程序吗?程序吗?i=1i=1S=0S=0WHILE WHILE i i=100=100S=S=S+iS+ii=i+1i=i+1WENDWENDPRINT SPRINT S END END 第一步,
9、令第一步,令i=1i=1,S=0.S=0.第二步,若第二步,若i i100100成成立,则执行第三步;立,则执行第三步;否则,输出否则,输出S S,结束,结束算法算法.第三步,第三步,S=S=S+iS+i.第四步,第四步,i=i+1i=i+1,返,返回第二步回第二步.思考思考4:4:阅读下面的程序,你能说明它是阅读下面的程序,你能说明它是一个什么问题的算法吗?一个什么问题的算法吗?x=1x=1WHILEWHILE x x2 210001000 PRINT x PRINT x x=x+1 x=x+1WENDWENDEND END 求满足求满足x x2 211?结束结束是是否否n=1n=1DODO
10、INPUT xINPUT xy=xy=x3+3*x3+3*x2-24*x+302-24*x+30PRINT yPRINT yn=n+1n=n+1LOOP UNTILLOOP UNTIL n n1111ENDEND 例例2 2 将用将用“二二分法分法”求方程求方程 的近似解的程序的近似解的程序框图转化为相应框图转化为相应的程序的程序.开始开始结束结束f(a)f(m)0?a=mb=m是是否否|a-b|d或或f(m)=0?输出输出m是是否否f(x)=2x3+3x-3+3x-3输入精确度输入精确度d和初始值和初始值a,bENDENDINPUT INPUT“a a,b b,d=d=”;a a,b b,d
11、 dDODOm=(a+b)/2m=(a+b)/2g=2*ag=2*a3+3*a-33+3*a-3f=2*mf=2*m3+3*m-33+3*m-3IFIF g*f g*f0 0 THENTHENb=mb=mELSEELSEa=ma=mEND IFEND IFLOOP UNTILLOOP UNTIL ABS(a-bABS(a-b)d OR f=0d OR f=0PRINT mPRINT m小结作业小结作业2.2.直到型循环语句在条件不符合时再执直到型循环语句在条件不符合时再执行循环体,当型循环语句在条件符合时行循环体,当型循环语句在条件符合时再执行循环体再执行循环体.1.1.两种循环语句源于两种循环结构,直两种循环语句源于两种循环结构,直到型循环语句先执行循环体,再判断条到型循环语句先执行循环体,再判断条件;当型循环语句先判断条件,再执行件;当型循环语句先判断条件,再执行循环体循环体.作业:作业:P33P33习题习题1.2A1.2A组组:3.3.B B组组:2.2.
限制150内