條件語(yǔ)句-基本算法語(yǔ)句_第1頁(yè)
條件語(yǔ)句-基本算法語(yǔ)句_第2頁(yè)
條件語(yǔ)句-基本算法語(yǔ)句_第3頁(yè)
條件語(yǔ)句-基本算法語(yǔ)句_第4頁(yè)
條件語(yǔ)句-基本算法語(yǔ)句_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1.2 1.2 基本算法語(yǔ)句基本算法語(yǔ)句算法中的條件結(jié)構(gòu)是由條件語(yǔ)句來(lái)表達(dá)的算法中的條件結(jié)構(gòu)是由條件語(yǔ)句來(lái)表達(dá)的, ,條件語(yǔ)句是處理?xiàng)l件分支邏輯結(jié)構(gòu)的算法語(yǔ)句條件語(yǔ)句是處理?xiàng)l件分支邏輯結(jié)構(gòu)的算法語(yǔ)句 . .條件語(yǔ)句的一般格式條件語(yǔ)句的一般格式 滿(mǎn)足條件?滿(mǎn)足條件?語(yǔ)句語(yǔ)句是是否否只含一個(gè)只含一個(gè)“分支分支”的條件結(jié)構(gòu)的條件結(jié)構(gòu)寫(xiě)成條件語(yǔ)句為寫(xiě)成條件語(yǔ)句為IFIF 條件條件 THENTHEN 語(yǔ)句體語(yǔ)句體END IFEND IF當(dāng)計(jì)算機(jī)執(zhí)行這種形式的條件語(yǔ)句時(shí),首先對(duì)當(dāng)計(jì)算機(jī)執(zhí)行這種形式的條件語(yǔ)句時(shí),首先對(duì)IFIF后的條件進(jìn)行判斷,如果條件符合,就執(zhí)行后的條件進(jìn)行判斷,如果條件符合,就執(zhí)行THE

2、NTHEN后的語(yǔ)句體,否則執(zhí)行后的語(yǔ)句體,否則執(zhí)行END IFEND IF之后的語(yǔ)句之后的語(yǔ)句. . 滿(mǎn)足條件?滿(mǎn)足條件?語(yǔ)句語(yǔ)句1 1語(yǔ)句語(yǔ)句2 2是是否否含兩個(gè)含兩個(gè)“分支分支”的條件結(jié)構(gòu)的條件結(jié)構(gòu)寫(xiě)成條件語(yǔ)句為寫(xiě)成條件語(yǔ)句為IFIF 條件條件 THENTHEN 語(yǔ)句體語(yǔ)句體1 1ELSEELSE 語(yǔ)句體語(yǔ)句體2 2END IFEND IF當(dāng)計(jì)算機(jī)執(zhí)行上述語(yǔ)句時(shí),首先對(duì)當(dāng)計(jì)算機(jī)執(zhí)行上述語(yǔ)句時(shí),首先對(duì)IFIF后的后的條件進(jìn)行判斷,如果條件符合,就執(zhí)行條件進(jìn)行判斷,如果條件符合,就執(zhí)行THENTHEN后后的語(yǔ)句體的語(yǔ)句體1 1,否則執(zhí)行,否則執(zhí)行ELSEELSE后的語(yǔ)句體后的語(yǔ)句體2. 2.

3、你能寫(xiě)出這個(gè)算法對(duì)應(yīng)的程序嗎?你能寫(xiě)出這個(gè)算法對(duì)應(yīng)的程序嗎? x0?開(kāi)始開(kāi)始結(jié)束結(jié)束輸入輸入x是是輸出輸出x否否輸出輸出- -xENDENDINPUTINPUT x xIFIF x x=0=0 THEN THEN PRINT xPRINT xELSEELSEPRINT -xPRINT -xEND IFEND IF閱讀下面的程序,你能說(shuō)出程序的運(yùn)行閱讀下面的程序,你能說(shuō)出程序的運(yùn)行過(guò)程并畫(huà)出對(duì)應(yīng)的程序框圖嗎?過(guò)程并畫(huà)出對(duì)應(yīng)的程序框圖嗎? x0?開(kāi)始開(kāi)始結(jié)束結(jié)束輸入輸入x是是x=-=-x輸出輸出x否否ENDENDINPUTINPUT x xIFIF x x0時(shí)時(shí),一元二次方程有兩個(gè)不等的實(shí)數(shù)根一元

4、二次方程有兩個(gè)不等的實(shí)數(shù)根.(2)當(dāng)當(dāng)=0時(shí)時(shí),一元二次方程有兩個(gè)相等的實(shí)數(shù)根一元二次方程有兩個(gè)相等的實(shí)數(shù)根.122bxxa (3)當(dāng)當(dāng)=0 THENIF d=0 THEN p=-b/(2*a) q=SQR(d)/(2*a) IF d=0 THEN PRINT “One real root:”;p ELSE x1=p+q x2=p-q PRINT “Two real roots:”;x1,x2 END IFELSEELSE PRINT “No real root! !”END IFENDEND是是開(kāi)始開(kāi)始=b2-4ac0?2bpa 2qa原方程無(wú)實(shí)根原方程無(wú)實(shí)根否否結(jié)束結(jié)束=0?輸出輸出p是是

5、否否x1=p+qx2=p-q輸出輸出x1,x2輸入輸入a,b,c例例2 2:編寫(xiě)程序,使得任意輸入的:編寫(xiě)程序,使得任意輸入的3 3個(gè)整個(gè)整數(shù)按從大到小的順序輸出。數(shù)按從大到小的順序輸出。算法分析:算法分析:用用a a,b b,c c表示輸入的表示輸入的3 3個(gè)整數(shù);為個(gè)整數(shù);為了節(jié)約變量,把它們重新排列后,仍用了節(jié)約變量,把它們重新排列后,仍用a a,b b,c c表表示,并使示,并使abc.abc.具體操作步驟如下。具體操作步驟如下。第一步:輸入第一步:輸入3 3個(gè)整數(shù)個(gè)整數(shù)a a,b b,c.c.第二步:將第二步:將a a與與b b比較,并把小者賦給比較,并把小者賦給b b,大者,大者賦

6、給賦給a.a.第三步:將第三步:將a a與與c c比較比較. . 并把小者賦給并把小者賦給c c,大者,大者賦給賦給a a,此時(shí),此時(shí)a a已是三者中最大的。已是三者中最大的。第四步:將第四步:將b b與與c c比較,并把小者賦給比較,并把小者賦給c c,大者,大者賦給賦給b b,此時(shí),此時(shí)a a,b b,c c已按從大到小的順序排列好。已按從大到小的順序排列好。第五步:按順序輸出第五步:按順序輸出a a,b b,c.c.c=bb=tb=tc=ta=c【程序框圖程序框圖】開(kāi)始開(kāi)始輸入輸入a,b,cba?是是t=aa=b否否ca?是是t=a否否cb?t=c是是否否輸出輸出a,b,c交換交換a,b

7、a,b的值的值【程序程序】INPUT “a,b,c =”;a,b,cIF ba THEN t=a a=b b=tEND IFIF ca THEN t=a a=c c=tEND IFIF cb THEN t=b b=c c=tEND IF END IF PRINT a,b,cENDEND鞏固練習(xí)鞏固練習(xí)1. INPUT “x= ”; x IF x3 THEN y=x * x ELSE y=2 * x END IF PRINT “y=”; y END 若輸入若輸入4,輸出結(jié)果是,輸出結(jié)果是 補(bǔ)充完整下面用來(lái)求補(bǔ)充完整下面用來(lái)求任意一個(gè)實(shí)數(shù)任意一個(gè)實(shí)數(shù)x的絕對(duì)的絕對(duì)值的程序值的程序 INPUT “x

8、= ”; x _ PRINT “|x|= ”; x ELSE PRINT “|x|= ”; -x _ END16IF X=0 THENEND IF鞏固練習(xí)鞏固練習(xí)右邊給出的是用條件語(yǔ)右邊給出的是用條件語(yǔ)句編寫(xiě)的一個(gè)程序,根句編寫(xiě)的一個(gè)程序,根據(jù)該程序回答:據(jù)該程序回答:INPUT x IF x3 THEN y=x*x-1 ELSE y=0 END IFEND IFPRINT yEND(1 1)若輸入)若輸入5 5,則輸出結(jié)果是,則輸出結(jié)果是 ;(2 2)若輸入若輸入2,則輸出結(jié)果是,則輸出結(jié)果是 ;(3)若輸入)若輸入3,則輸出結(jié)果是,則輸出結(jié)果是 ;y244課時(shí)小結(jié):課時(shí)小結(jié): 本節(jié)課主要學(xué)

9、習(xí)了條件語(yǔ)句的結(jié)構(gòu)、特點(diǎn)、本節(jié)課主要學(xué)習(xí)了條件語(yǔ)句的結(jié)構(gòu)、特點(diǎn)、作用及用法,并懂得利用解決一些簡(jiǎn)單問(wèn)題。作用及用法,并懂得利用解決一些簡(jiǎn)單問(wèn)題。條件語(yǔ)句使程序執(zhí)行產(chǎn)生分支,根據(jù)不同的條條件語(yǔ)句使程序執(zhí)行產(chǎn)生分支,根據(jù)不同的條件執(zhí)行不同的路線(xiàn),使復(fù)雜問(wèn)題簡(jiǎn)單化。件執(zhí)行不同的路線(xiàn),使復(fù)雜問(wèn)題簡(jiǎn)單化。 條件語(yǔ)句一般用在需要對(duì)條件進(jìn)行判斷的算條件語(yǔ)句一般用在需要對(duì)條件進(jìn)行判斷的算法設(shè)計(jì)中,如判斷一個(gè)數(shù)的正負(fù),確定兩個(gè)數(shù)的法設(shè)計(jì)中,如判斷一個(gè)數(shù)的正負(fù),確定兩個(gè)數(shù)的大小等問(wèn)題,還有求分段函數(shù)的函數(shù)值等,往往大小等問(wèn)題,還有求分段函數(shù)的函數(shù)值等,往往要用條件語(yǔ)句,有時(shí)甚至要用到條件語(yǔ)句的嵌套。要用條件語(yǔ)句,

10、有時(shí)甚至要用到條件語(yǔ)句的嵌套?!菊n堂練習(xí)課堂練習(xí)】1.1.課本課本P29P29頁(yè)頁(yè)T2.T2.讀程序讀程序, ,說(shuō)明程序的運(yùn)行過(guò)程說(shuō)明程序的運(yùn)行過(guò)程. .INPUT “x=:”;xIF 9x AND xc AND a+cb AND b+ca THEN PRINT “Yes.”ELSE PRINT “No.”END IFEND參考答案:參考答案:設(shè)計(jì)一個(gè)算法,實(shí)現(xiàn)求絕對(duì)值的功能設(shè)計(jì)一個(gè)算法,實(shí)現(xiàn)求絕對(duì)值的功能.S1 輸入輸入x;S2 如果如果x0 ,y x, 否則否則 y x;S3 輸出輸出y.自然語(yǔ)言算法自然語(yǔ)言算法1:S1 輸入輸入x;S2 如果如果x0 ,x x;S3 輸出輸出x.Y開(kāi)始開(kāi)

11、始輸入輸入xx0yxyxN結(jié)束結(jié)束輸出輸出yNxx結(jié)束結(jié)束輸出輸出xY開(kāi)始開(kāi)始輸入輸入xx0 Read x If x 3 Then y x Else y x End if Print y自然語(yǔ)言算法自然語(yǔ)言算法2:條件語(yǔ)句偽代碼格式條件語(yǔ)句偽代碼格式2 2: If A Then B 10 Read x20 If x0 Then x x30 Print x輸出輸出y結(jié)束結(jié)束x0YN開(kāi)始開(kāi)始輸入輸入xy1x0YNy0y1 下列流程圖下列流程圖,實(shí)現(xiàn)的一個(gè)實(shí)現(xiàn)的一個(gè)“符號(hào)符號(hào)”函數(shù)的求值,試用自函數(shù)的求值,試用自然語(yǔ)言和偽代碼描述算法然語(yǔ)言和偽代碼描述算法.S2 如果如果x0 ,y 1,轉(zhuǎn),轉(zhuǎn)S4;

12、S1 輸入輸入x;S4 輸出輸出y.自然語(yǔ)言:自然語(yǔ)言:S3 如果如果x=0 ,y 0, 否則否則 y 1;If x0 Then y 1 Else If x=0 Then y 0 Else y 1 End if End if Read x偽代碼:偽代碼:Print y If A Then B Else C End If If A Then B If A Then B Else If C Then D Else E End If End If3.3.課本課本P29P29頁(yè)頁(yè)T3.T3.編寫(xiě)求一個(gè)數(shù)是偶數(shù)還是奇數(shù)的編寫(xiě)求一個(gè)數(shù)是偶數(shù)還是奇數(shù)的程序程序, ,從鍵盤(pán)輸入一個(gè)整數(shù)從鍵盤(pán)輸入一個(gè)整數(shù), ,輸出該數(shù)的奇偶性輸出該數(shù)的奇偶性. .INPUT “a=”; aIF a MOD 2 =0 THEN PRINT “Even.”ELSE PRINT “Odd.”END IFEND參考答案:參考答案:4.編寫(xiě)一個(gè)程序編寫(xiě)一個(gè)程序,輸入兩個(gè)整數(shù)輸入兩個(gè)整數(shù)a,b,判斷判斷a是否是否能被能被b整除整除.INPUT “a,b=”; a,bIF a MOD b =0 THEN PRINT “b divides a.”ELSE PRINT “b does not divide a.”END IFEND參考答案:參考答案:作業(yè)P33 B T35.(P33頁(yè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論