課程內(nèi)容
《循環(huán)語句》
問題提出
順序結(jié)構(gòu)→輸入語句、輸出語句、賦值語句
條件結(jié)構(gòu)→條件語句
循環(huán)結(jié)構(gòu)→循環(huán)語句
知識(shí)探究(一):直到型循環(huán)語句
思考1:直到型循環(huán)結(jié)構(gòu)的程序框圖是什么?
思考2:該循環(huán)結(jié)構(gòu)對(duì)應(yīng)的循環(huán)語句的一般格式設(shè)定為:
DO
循環(huán)體
LOOP UNTIL 條件
先執(zhí)行一次DO和UNTIL之間的循環(huán)體,再對(duì)UNTIL后的條件進(jìn)行判斷,如果條件不符合,則繼續(xù)執(zhí)行循環(huán)體;然后再檢查上述條件,如果條件仍不符合,則再次執(zhí)行循環(huán)體,直到條件符合為止。這時(shí),計(jì)算機(jī)將不執(zhí)行循環(huán)體,而執(zhí)行UNTIL語句之后的語句。
思考3:計(jì)算1+2+3+……+100的值有如下算法:
你能利用UNTIL語句學(xué)出這個(gè)算法對(duì)應(yīng)的程序嗎?
思考4:在下面的程序運(yùn)行中,計(jì)算機(jī)輸出的結(jié)果是多少?
x=20
DO
x=x-3
LOOP UNTIL x<0
PRINT x
END
知識(shí)探究(二):當(dāng)型循環(huán)語句
思考1:當(dāng)型循環(huán)結(jié)構(gòu)的程序框圖是什么?
思考2:該循環(huán)結(jié)構(gòu)對(duì)應(yīng)的循環(huán)語句的一般格式設(shè)定為:
WHILE 條件
循環(huán)體
WEND
先對(duì)條件進(jìn)行判斷,如果條件符合,則執(zhí)行WHILE和WEND之間的循環(huán)體;然后再檢查上述條件,如果條件仍符合,則再次執(zhí)行循環(huán)體,直到某一次條件不符合為止。這時(shí),計(jì)算機(jī)將不執(zhí)行循環(huán)體,而執(zhí)行WEND語句之后的語句。
思考3:計(jì)算1+2+3+……+100的值。
思考4:閱讀下面的程序,你能說明它是一個(gè)什么問題的算法嗎?
典型例題
例1:已知函數(shù)y=x3+3x2-24x+30,寫出連續(xù)輸入自變量的11個(gè)取值,分別輸出相應(yīng)的函數(shù)值的程序。
例2:將用“二分法”求方程x2-2=0(x>0)的近似解的程序框圖轉(zhuǎn)化為相應(yīng)的程序。
小結(jié)
1、兩種循環(huán)語句源于兩種循環(huán)結(jié)構(gòu),直到型循環(huán)語句先執(zhí)行循環(huán)體,再判斷條件;當(dāng)型循環(huán)語句先判斷條件,再執(zhí)行循環(huán)體,注意循環(huán)三要素的確定。
2、設(shè)計(jì)程序方法:先用自然語言表示算法步驟,再畫出對(duì)應(yīng)的程序框圖,然后根據(jù)框圖編寫程序語句,最后上機(jī)調(diào)試運(yùn)行。也體現(xiàn)了算法的逐漸細(xì)化、精確化的過程。