高中數(shù)學(xué)必修三課件-基本算法語句_第1頁
高中數(shù)學(xué)必修三課件-基本算法語句_第2頁
高中數(shù)學(xué)必修三課件-基本算法語句_第3頁
高中數(shù)學(xué)必修三課件-基本算法語句_第4頁
高中數(shù)學(xué)必修三課件-基本算法語句_第5頁
已閱讀5頁,還剩139頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1.2.1基本算法語句——輸入語句、輸出語句和賦值語句1.2.1基本算法語句1復(fù)習(xí)回顧1.算法的的基本邏輯結(jié)構(gòu)有哪幾種?

2.設(shè)計一個算法的程序框圖的基本思路如何?第二步,確定每個算法步驟所包含的邏 輯結(jié)構(gòu),并用相應(yīng)的程序框圖表示.第一步,用自然語言表述算法步驟.第三步,將所有步驟的程序框圖用流程 線連接起來,并加上兩個終端框.復(fù)習(xí)回顧1.算法的的基本邏輯結(jié)構(gòu)有哪幾種?2.23.計算機完成任何一項任務(wù)都需要算法,但是,用自然語言或程序框圖表示的算法,計算機是無法“理解”的.因此我們還需要將算法用計算機能夠理解的程序設(shè)計語言來表示.3.計算機完成任何一項任務(wù)都需要算法,但是,用自然語3這就是這一節(jié)所要研究的主要內(nèi)容——基本算法語句。今天,我們先一起來學(xué)習(xí)輸入語句、輸出語句和賦值語句。程序設(shè)計語言有很多種。如BASIC,F(xiàn)oxbase,C語言,C++,J++,VB等。為了實現(xiàn)算法中的三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu),各種程序設(shè)計語言中都包含下列基本的算法語句:輸入語句輸出語句賦值語句條件語句循環(huán)語句這就是這一節(jié)所要研究的主要內(nèi)容——基本算法程序設(shè)計語言4已知函數(shù)y=x3+3x2-24x+30,求自變量x對應(yīng)的函數(shù)值的算法步驟如何設(shè)計?第一步,輸入一個自變量x的值.第三步,輸出y.第二步,計算y=x3+3x2-24x+30.已知函數(shù)y=x3+3x2-24x+30,求自變量x對應(yīng)的函數(shù)5該算法是什么邏輯結(jié)構(gòu)?其程序框圖如何?開始輸入x結(jié)束輸出yy=x3+3x2-24x+30該算法是什么邏輯結(jié)構(gòu)?其程序框圖如何?開始輸入x結(jié)束輸出yy6

這個程序由4個語句行組成,計算機按語句行排列的順序依次執(zhí)行程序中的語句,最后一行的END語句表示程序到此結(jié)束.INPUT“x=”;x

PRINT“y=”;yEND-------------輸入語句-----------賦值語句-------------輸出語句-------------表示結(jié)束這個程序由4個語句行組成,計算機按語句行排列的順序依次7一.輸入語句

INPUT“提示內(nèi)容”;變量輸入語句的一般格式說明:(1)輸入語句的作用是實現(xiàn)算法的輸入信息功能;(2)“提示內(nèi)容”提示用戶輸入什么樣的信息,變量是指程序在運行時其值是可以變化的量;(3)輸入語句要求輸入的值只能是具體的常數(shù),不能是函數(shù)、變量或表達式;(4)提示內(nèi)容與變量之間用分號“;”隔開,(5)“提示內(nèi)容”和它后面的“;”可以省略;如INPUT“x=”;x或INPUTx一.輸入語句INPUT“提示內(nèi)容”;變量輸入語句的一般格8例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,可以寫成:INPUT“數(shù)學(xué),語文,英語=”;a,b,c注意: INPUT語句還可以給多個變量賦值,變量與變量之間用逗號“,”隔開.其格式為:INPUT“提示內(nèi)容1,提示內(nèi)容2,…”;變量1,變量2,…練一練:1、給定一個任意正整數(shù)n。

2、給定三角形的三條邊長1INPUT“n=”;n2INPUTa,b,c例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,INPUT9二.輸出語句

PRINT“提示內(nèi)容”;表達式①輸出常量,變量的值和字符串等系統(tǒng)信息。②輸出數(shù)值計算的結(jié)果。(1)輸出語句的用途:

輸出語句的一般格式二.輸出語句PRINT“提示內(nèi)容”;表達式①輸出常量10(3)同輸入語句一樣,表達式前也可以有“提示內(nèi)容”.〖思考〗:在課本P7頁圖1.1-2程序框圖中的輸出框的內(nèi)容怎樣用輸出語句來表達?參考答案:輸出框:PRINT“n是質(zhì)數(shù).”PRINT“n不是質(zhì)數(shù).”如P9頁的輸出框可以轉(zhuǎn)化為輸出語句:輸出SPRINT“S=”;S(3)同輸入語句一樣,表達式前也可以有“提示內(nèi)容”.〖思考〗11【例題解析】〖例2〗:編寫程序,計算一個學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績。分析:先寫出算法,畫出程序框圖,再進行編程。結(jié)束開始輸入a,b,c輸出y程序框圖程序:INPUT“Maths=”;aINPUT“Chinese=”;bINPUT“English=”;cPRINT“Theaverage=”;(a+b+c)/3END【例題解析】分析:先寫出算法,畫出程序框圖,再進行編程。結(jié)束12y=(a+b+c)/3輸出y結(jié)束開始例2、編寫程序,計算一個學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績。INPUT“a,b,c”;a,b,cy=(a+b+c)/3PRINT“y=”;yEND輸入a、b、cINPUT“a,b,c”;a,b,cPRINT“y=”;(a+b+c)/3END程序2程序3y=(a+b+c)/3輸出y結(jié)束開始例2、編寫程序,計算一個13三.賦值語句(1)賦值語句的一般格式:變量=表達式(2)作用:先計算出賦值號右邊表達式的值,然后把這個值賦給左邊的變量,使該變量的值等于表達式的值。(3)賦值語句左邊只能是變量名字而不是表達式,如:2=x是錯誤的;右邊表達式可以是一個數(shù)據(jù)、常量或算式;不能利用賦值語句進行代數(shù)式的演算。(如化簡、因式分解、解方程等)(4)一個語句只能給一個變量賦值。(5)對于一個變量可以多次賦值,但變量的取值總是最近被賦值的。三.賦值語句(1)賦值語句的一般格式:變量=表達式(2)作用14(1)錯,變量之間應(yīng)用","號隔開;(2)錯,INPUT語句中只能是變量,而不能是表達式;(3)錯,PRINT語句不能用賦值號"=";(4)正確,PRINT語句可以輸出常量、表達式的值;(5)錯,賦值語句中"="號左右不能互換;(6)錯,不能給一個表達式賦值;(7)錯,一個賦值語句只能給一個變量賦值;(8)正確,該句的功能是將當前T的值平方后再賦給變量T.練習(xí):解析:(1)錯,變量之間應(yīng)用","號隔開;(2)錯,IN15練習(xí):讀下列兩個程序,回答問題.①X=3y=4x=yPRINTx,yEND上述程序最后輸出的x,y分別是為:②

X=3y=4y=xPRINTx,yEND4,43,3練習(xí):讀下列兩個程序,回答問題.①X=3上述程序最后輸出的x16三、課后練習(xí)1:p.24練習(xí)第一題程序程序:INPUT“F=”;FC=(F-32)*5/9PRINT“C=”;CEND三、課后練習(xí)1:p.24練習(xí)第一題程序程序:17取余數(shù)MOD取商\<><=>=冪運算^除法運算/乘法運算功能運算符*Inx|x|功能LOG(x)SQR(x)ABS(x)注意事項函數(shù)名BASIC語言中的常用運算符號取余數(shù)MOD取商\<><=>=冪運算^除法運算/乘法運算功能18〖例3〗:給一個變量重復(fù)賦值。程序:A=10A=A+15PRINT

AENDA的輸出值是多少?

分析:此程序給變量A賦了兩次值.A的初值為10,第二次賦值后,初值被“覆蓋”,A的值變?yōu)?5,因此輸出值是25.〖例3〗:給一個變量重復(fù)賦值。程序:A=10A的輸出值是多少19[變式引申]:在此程序的基礎(chǔ)上,設(shè)計一個程序,要求最后A的輸出值是30.A=10A=A+15PRINT

AA=A+5PRINT

AEND程序:〖例3〗:給一個變量重復(fù)賦值。程序:A=10A=A+15PRINT

AEND對于一個變量可以多次賦值,但變量的取值總是最近被賦值的。[變式引申]:在此程序的基礎(chǔ)上,設(shè)計一個程序,A=10程序:20〖例4〗交換兩個變量A和B的值,并輸出交換前后的值。分析:引入一個中間變量X,將A的值賦予X,又將B的值賦予A,再將X的值賦予B,從而達到交換A,B的值.(比如交換裝滿水的兩個水桶里的水需要再找一個空桶)INPUT

AINPUT

BPRINT

A,BX=AA=BB=XPRINT

A,BEND程序:問題:能否用下列賦值語句交換A,B的值?A=BB=A不能!!!!!!〖例4〗交換兩個變量A和B的值,并輸出交換前后分析:引入一個211:下列給出的輸入,輸出語句正確的是()①輸入語句INPUTa;b;c②輸入語句INPUTx=3③輸出語句PRINTA=4④輸出語句PRINT20,3*22:當x的值為5時,“PRINT“x=”;x”在屏幕上輸出的結(jié)果是()A:5=5B:5C:5=xD:x=5練習(xí)11:下列給出的輸入,輸出語句正確的是()①輸入語句I22INPUT“A,B=”;A,BB=A+BA=B-AB=B-APRINT“A,B=”;A,BEND(運行時從鍵盤輸入3,7)(1)(2)A=-1000A=A+100PRINT“A=”;AEND

將一個變量的值賦給另一個變量,前一個變量的值保持不變;可先后給一個變量賦多個不同的值,但變量的取值總是最近被賦予的值。A=-900A,B=73練習(xí)2.分析下列程序,考慮輸出的結(jié)果是什么?INPUT“A,B=”;A,B(1)(2)A=-100023(3)a=1b=a+3b=b+1PRINT“b=”;b運算結(jié)果是(b=5)

(4)a=2b=3c=4b=c+2c=b+4d=(a+b+c)/3PRINT“d=”;d

運算結(jié)果是()d=6(3)a=1(4)a=2d=624a=2b=3c=a+bb=a+c-bPRINT“a=,b=,c=”;a,b,cEND運算結(jié)果是()(5)(6)x=1x=x*2x=x*3x=x*4PRINTx*5END運算結(jié)果是()a=,b=,c=245120a=2(5)(6)x=1a=,b=,c=2425三、課后練習(xí)2:p.24練習(xí)第二題程序程序:INPUT“a=,b=”;a,bsum=a+bdiff=a-bmul=a*bdiv=a/bPRINTsum,diff,mul,divEND三、課后練習(xí)2:p.24練習(xí)第二題程序程序:26三、課后練習(xí)3:p.24練習(xí)第三題程序程序:INPUT“a=”;aINPUT“b=”;bINPUT“c=”;cp=(a+b+c)/2s=SQR(p*(p-a)*(p-b)*(p-c))PRINT“s=”;sEND三、課后練習(xí)3:p.24練習(xí)第三題程序程序:27三、課后練習(xí)4:p.24練習(xí)第四題程序程序:INPUT“a,b,c=”;a,b,cx=10.4*ay=15.6*bz=25.2*csum=x+y+zPRINT“sum=”;sumEND三、課后練習(xí)4:p.24練習(xí)第四題程序程序:28〖練習(xí)1〗:編寫一個程序,要求輸入一個圓的半徑,便能輸出該圓的周長和面積.(π取3.14)分析:設(shè)圓的半徑為R,則圓的周長C=2πR,面積S=πR2,可以利用順序結(jié)構(gòu)中的INPUT語句,PRINT語句和賦值語句設(shè)計程序。INPUT“R=”;RC=2*3.14*RS=3.14*R^2PRINT

“C=”;CPRINT

“S=”;SEND〖練習(xí)1〗:編寫一個程序,要求輸入一個圓的半徑,便能輸出該圓29讀下列兩個程序語句回答問題.(1)上述兩個程序有何區(qū)別.(2)寫出兩個程序的運行結(jié)果;(a)INPUTXINPUTYX=2013Y=2012X=YPRINTX,YEND(b)INPUTXINPUTYX=2013Y=2012Y=XPRINTX,YEND能力提升(a)20122012(b)20132013讀下列兩個程序語句回答問題.(1)上述兩個程序有何區(qū)別.(a30歸納總結(jié)鞏固提高

水果店的老板忙極了,小新設(shè)計了一個程序幫助老板算賬.已知水晶梨2.4元/千克,葡萄8.6元/千克,哈密瓜4.2元/千克,某顧客分別買這三種水果a,b,c千克.請你將程序補充完整。

INPUT

A=2.4*aB=8.6*bC=4.2*cS=

PRINT

ENDa,b,cA+B+CS歸納總結(jié)鞏固提高水果店的老板忙極了,小新設(shè)計了31〖練習(xí)2〗P24頁T1.程序:INPUT“F=”;FC=(F-32)5/9PRINT“C=”;CEND*〖練習(xí)2〗P24頁T1.程序:INPUT“F32〖練習(xí)3〗P24頁T2.INPUT“a,b(a,b≠0)=”;a,bX=a+bY=a-bZ=abQ=a/bPRINTX,Y,Z,QEND*程序:〖練習(xí)3〗P24頁T2.INPUT“a,b(a,b≠0)=33注:BASIC語言中的標準函數(shù)SQR(x),表示數(shù)x的算術(shù)平方根,ABS(x)表示x的絕對值等.程序:p=(2+3+4)/2t=p

(p-2)

(p-3)

(p-4)S=SQR(t)PRINT“S=”;SEND***〖練習(xí)4〗P24頁T3.ABS(x)=|x|.程序:p=(2+3+4)/2***〖練習(xí)4〗P234INPUT“a,b,c=”;a,b,cX=10.4*aY=15.6*bZ=25.2*csum=X+Y+ZPRINT“sum=”;sumEND程序:〖作業(yè)1〗P24頁T4.INPUT“a,b,c=”;a,b,c程序:〖作業(yè)1〗P35INPUT“a,b,h=”;a,b,hp=a+bs=p*h/2PRINT“s=”;sEND程序:〖作業(yè)2〗P33頁A組T2.INPUT“a,b,h=”;a,b,h程序:〖作業(yè)2〗P36【課堂小結(jié)】(1)本節(jié)課介紹了輸入語句、輸出語句和賦值語句的結(jié)構(gòu)特點及聯(lián)系. (2)掌握并應(yīng)用輸入語句,輸出語句,賦值語句編寫一些簡單的程序解決數(shù)學(xué)問題,特別是掌握賦值語句中“=”的作用及應(yīng)用.(3)編程一般的步驟:先寫出算法,再進行編程.我們要養(yǎng)成良好的習(xí)慣,也有助于數(shù)學(xué)邏輯思維的形成。【課堂小結(jié)】37

比較下列各組語句的區(qū)別,再判斷它們是否正確.(1)①輸入語句INPUT“a=”;a②輸入語句INPUT“a=”,a√╳(2)①輸入語句INPUT“a,b,c=”;a,b;c②輸入語句INPUTa,b,c√“提示內(nèi)容”與變量之間用分號隔開.“提示內(nèi)容”與后面的“;”可省略.變量與變量之間用逗號隔開出PRINT出出出PRINTPRINTPRINT觀察╳比較下列各組語句的區(qū)別,再判斷它們是否正確.√38

比較下列各組語句的區(qū)別,再判斷它們是否正確.(3)①輸出語句PRINT“S=”;7②輸出語句PRINTS=7√╳√╳賦值號左邊是變量,只能給一個變量賦值.╳輸入、輸出語句中不能用賦值號.觀察(4)①賦值語句r=9②賦值語句9=r③賦值語句R=r=9比較下列各組語句的區(qū)別,再判斷它們是否正確.√391.2.2基本算法語句

——條件語句1.2.2基本算法語句40

算法中的條件結(jié)構(gòu)是由條件語句來表達的,條件語句是處理條件分支邏輯結(jié)構(gòu)的算法語句.條件語句的一般格式滿足條件?語句是否只含一個“分支”的條件結(jié)構(gòu)寫成條件語句為IF

條件THEN

語句體ENDIF當計算機執(zhí)行這種形式的條件語句時,首先對IF后的條件進行判斷,如果條件符合,就執(zhí)行THEN后的語句體,否則執(zhí)行ENDIF之后的語句. 算法中的條件結(jié)構(gòu)是由條件語句來表達的,條件語句是處理條件分41滿足條件?語句1語句2是否含兩個“分支”的條件結(jié)構(gòu)寫成條件語句為IF

條件THEN

語句體1ELSE

語句體2ENDIF

當計算機執(zhí)行上述語句時,首先對IF后的條件進行判斷,如果條件符合,就執(zhí)行THEN后的語句體1,否則執(zhí)行ELSE后的語句體2.滿足條件?語句1語句2是否含兩個“分支”的條件結(jié)構(gòu)寫成條件語42

條件語句的作用 在程序執(zhí)行過程中,根據(jù)判斷是否滿足約定的條件而決定是否需要轉(zhuǎn)換到何處去。需要計算機按條件進行分析、比較、判斷,并按判斷后的不同情況進行不同的處理。條件語句的作用43【例題解析】〖例1〗:編寫程序,輸入一元二次方程ax2+bx+c=0的系數(shù),輸出它的實數(shù)根。一元二次方程的根有三種不同情況:設(shè)判別式△=b2-4ac(1)當△>0時,一元二次方程有兩個不等的實數(shù)根.(2)當△=0時,一元二次方程有兩個相等的實數(shù)根.(3)當△<0時,一元二次方程沒有實數(shù)根.算法分析:【例題解析】〖例1〗:編寫程序,輸入一元二次方程ax2+bx44是【程序框圖】開始輸入a,b,c△=b2-4ac△≥0?方程無實數(shù)根22結(jié)束否11△=0?輸出p是否x1=p+qx2=p-q輸出x1,x2是【程序框圖】開始輸入a,b,c△=b2-4ac△≥0?方程45【程序】INPUT

“a,b,c=”;a,b,cd=b*b-4*a*c

IFd>=0THENp=-b/(2*a)q=SQR(d)/(2*a)IFd=0THENPRINT“Onerealroot:”;pELSEx1=p+qx2=p-q

PRINT“Tworealroots:“;x1,x2ENDIFELSEPRINT“Norealroot!”ENDIFEND【程序】INPUT“a,b,c=”;a,b,c46〖例2〗:編寫程序,使得任意輸入的3個整數(shù)按從大到小的順序輸出。

算法分析:用a,b,c表示輸入的3個整數(shù);為了節(jié)約變量,把它們重新排列后,仍用a,b,c表示,并使a≥b≥c.具體操作步驟如下。 第一步:輸入3個整數(shù)a,b,c.

第二步:將a與b比較,并把小者賦給b,大者賦給a.

第三步:將a與c比較.并把小者賦給c,大者賦給a,此時a已是三者中最大的。 第四步:將b與c比較,并把小者賦給c,大者賦給b,此時a,b,c已按從大到小的順序排列好。 第五步:按順序輸出a,b,c.〖例2〗:編寫程序,使得任意輸入的3個整數(shù)按從大到小的順序輸47b=cc=tb=tc=ta=c【程序框圖】開始輸入a,b,cb>a?是t=aa=b否c>a?是t=a否c>b?t=b是否輸出a,b,c交換a,b的值結(jié)束b=cc=tb=tc=ta=c【程序框圖】開始輸入a,b,c48【程序】INPUT

“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND【程序】INPUT“a,b,c=”;a,b,cIFc49

【課堂小結(jié)】

本節(jié)課主要學(xué)習(xí)了條件語句的結(jié)構(gòu)、特點、作用以及用法,并懂得利用它解決一些簡單問題。條件語句使程序執(zhí)行產(chǎn)生的分支,根據(jù)不同的條件執(zhí)行不同的路線,使復(fù)雜問題簡單化。 條件語句一般用在需要對條件進行判斷的算法設(shè)計中,如判斷一個數(shù)的正負,確定兩個數(shù)的大小等問題,還有求分段函數(shù)的函數(shù)值等,往往要用條件語句,有時甚至要用到條件語句的嵌套?!菊n堂小結(jié)】50【課堂練習(xí)】1.課本P29頁T2.讀程序,說明程序的運行過程.INPUT“x=:”;xIF9<xANDx<100THENa=x\10b=xMOD10x=10*b+aPRINTxENDIFEND如果有兩個或是兩個以上的并列條件時,用“AND”把它們連接起來?!癨”用來取商.此處表示x除以10的商.“MOD”用來取余數(shù).此處表示x除以10所得余數(shù)為b.[問題]如輸入的數(shù)x=86,則輸出的結(jié)果是什么?68此程序用于交換一個兩位數(shù)的個位和十位數(shù)字.【課堂練習(xí)】1.課本P29頁T2.讀程序,說明程序的運行過程512.課本P29頁T1.INPUT“a,b,c=”;a,b,cIFa+b>cANDa+c>bANDb+c>aTHENPRINT“Yes.”ELSE

PRINT“No.”ENDIFEND參考答案:2.課本P29頁T1.INPUT“a,b,c=”;a,b523.課本P29頁T3.編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵盤輸入一個整數(shù),輸出該數(shù)的奇偶性.INPUT“a=”;aIFaMOD2=0THENPRINT“Even.”ELSE

PRINT“Odd.”ENDIFEND參考答案:3.課本P29頁T3.編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵534.課本P29頁T4.閏年指年份能被4整除但不能被100整除,或者能被400整除的年份.編寫一個程序,判斷輸入的年份是否為閏年.INPUT“Pleaseinputayear:”;yb=yMOD4c=yMOD100d=yMOD400IFb=0ANDc<>0THENPRINT“Leapyear.”ELSEIFd=0THEN

PRINT“Leapyear.”ELSEPRINT“Notleapyear.”ENDIFENDIFEND參考答案:表示c≠04.課本P29頁T4.閏年指年份能被4整除但不能被100整除54小常識:

地球繞太陽公轉(zhuǎn),每年并不是365天,而是多出來5個多個小時,這樣的話,每四年就會多將近1天,所以就放在2月的第29天了,閏年由此誕生。由于不是準確地多出來24小時,所以基本上每經(jīng)過24個閏年就不會多出1天了,但還是會多出幾分鐘的,如果從公元元年開始計的話正好也就是逢100的年份大多數(shù)時候不是閏年,這樣把多出的那幾分鐘再攢著,經(jīng)過400年后,就會有一個逢100的年份是閏年,比如公元1600年是閏年,1700、1800、1900年都不是,2000年才是閏年,下一次是2400年

小常識:地球繞太陽公轉(zhuǎn),每年并不是365天,而是多出來5555.編寫一個程序,輸入兩個整數(shù)a,b,判斷a是否能被b整除.INPUT“a,b=”;a,bIFaMODb=0THENPRINT“bdividesa.”ELSE

PRINT“bdoesnotdividea.”ENDIFEND參考答案:5.編寫一個程序,輸入兩個整數(shù)a,b,判斷a是否能被b整除.566.(P33頁B組T3)INPUT“x=”;xIFx<1THENy=xELSEIFx>=1ANDx<10THENy=2*x-1ELSE

y=3*x-11ENDIFENDIFPRINT“y=”;yEND參考答案:6.(P33頁B組T3)INPUT“x=”;x參考答案:571.2.3基本算法語句

——循環(huán)語句1.2.3基本算法語句58算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實現(xiàn)的.循環(huán)結(jié)構(gòu)有兩種-----當型與直到型.滿足條件?循環(huán)體是否當型循環(huán)結(jié)構(gòu)(當條件滿足時反復(fù)執(zhí)行循環(huán)體)直到型循環(huán)結(jié)構(gòu)(反復(fù)執(zhí)行循環(huán)體直到條件滿足)循環(huán)體是否滿足條件?

對應(yīng)于程序框圖中的兩種循環(huán)結(jié)構(gòu),一般程序設(shè)計語言中也有當型(WHILE型)和直到型(UNTIL型)兩種語句結(jié)構(gòu)。算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實現(xiàn)的.循環(huán)結(jié)構(gòu)有兩種---59(1)WHILE語句的一般格式是WHILE

條件循環(huán)體WEND

當計算機遇到WHILE語句時,先判斷條件的真假,如果條件符合,就執(zhí)行WHILE與WEND之間的循環(huán)體;然后再檢查上述條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個過程反復(fù)進行,直到某一次條件不符合為止.這時,計算機將不執(zhí)行循環(huán)體,直接跳到WEND語句后,接著執(zhí)行WEND之后的語句.滿足條件?循環(huán)體是否當型循環(huán)結(jié)構(gòu)WHILE——當……時候WEND——

朝……方向行走(1)WHILE語句的一般格式是WHILE條件當計60(2)UNTIL語句的一般格式是:DO

循環(huán)體LOOPUNTIL條件循環(huán)體是否滿足條件?直到型循環(huán)結(jié)構(gòu)DO——做什么LOOPUNTIL——繞環(huán)回線走,直到達到某種條件為止思考:參照其直到型循環(huán)結(jié)構(gòu)對應(yīng)的程序框圖,說說計算機是按怎樣的順序執(zhí)行UNTIL語句的?(2)UNTIL語句的一般格式是:循環(huán)體是否滿足條件?直到型61提問:通過對照,大家覺得WHILE型語句與UNTIL型語句之間有什么區(qū)別呢?區(qū)別:在WHILE語句中,是當條件滿足時執(zhí)行循環(huán)體,而在UNTIL語句中,是當條件不滿足時執(zhí)行循環(huán)體。WHILE語句的一般格式WHILE

條件循環(huán)體WENDUNTIL語句的一般格式DO

循環(huán)體LOOPUNTIL條件提問:通過對照,大家覺得WHILE型語句與UNTIL型區(qū)別:62例1.編寫程序,計算自然數(shù)1+2+3+…+99+100的和.

分析:這是一個累加問題.我們可以用WHILE型語句,也可以用UNTIL型語句。例1.編寫程序, 分析:這是一個累加問題.我們可以用WHIL63WHILE語句開始結(jié)束i=1S=0i=i+1S=S+i輸出Si≤100?是否當型循環(huán)結(jié)構(gòu)i=1S=0WHLIEi<=100S=S+ii=i+1WENDPRINTSENDWHILE語句開始結(jié)束i=1S=0i=i+1S=S+i輸出S64UNTIL語句開始結(jié)束i=1S=0i=i+1S=S+i輸出Si>100?否是直到型i=1S=0DOS=S+ii=i+1LOOPUNTILi>100PRINTSENDUNTIL語句開始結(jié)束i=1S=0i=i+1S=S+i輸出S65開始i=1S=0i≤100?是S=S+ii=i+1否輸出S結(jié)束當型循環(huán)結(jié)構(gòu)變式訓(xùn)練(1):編寫程序求:1×2×3×4×5×……×n的值.如何修改?輸入nWHILE語句i=1S=0WHLIEi<=100S=S+ii=i+1WENDPRINTSENDINPUT“n=”;nS=1S=S*ii≤n?S=1nS=S*i開始i=1S=0i≤100?是S=S+ii=i+1否輸出S結(jié)66變式訓(xùn)練(2):編寫程序求:1×3×5×7×……×101的值.如何修改?UNITL語句i=1S=0DOS=S+ii=i+1LOOPUNTILi>100PRINTSENDS=1101S=S*ii=i+2是開始結(jié)束i=1S=0i=i+1S=S+i輸出Si>100?否直到型S=1S=S*ii=i+2i>101?變式訓(xùn)練(2):如何修改?UNITL語句i=1DOS=S+i67例2:根據(jù)P7頁圖1.1-2,將程序框圖轉(zhuǎn)化為程序語句.分析:仔細觀察,該程序框圖中既有條件結(jié)構(gòu),又有循環(huán)結(jié)構(gòu)。INPUT

“n=”;ni=2DOr=nMODii=i+1LOOPUNTILi>=nORr=0IFr=0THENPRINT“nisnotaprimenumber.”ELSEPRINT“nisaprimenumber.”ENDIFEND程序例2:根據(jù)P7頁圖1.1-2,將程序框圖轉(zhuǎn)化為程序語句.分析68是是否f(a)f(m)>0?程序框圖開始f(x)=x2-2輸入誤差ε和初值a,ba=m否b=m|a-b|<ε或f(m)=0?輸出m結(jié)束第19頁1.1-20是是否f(a)f(m)>0?程序框圖開始f(x)=x2-269程序語言a=1b=2d=0.005DOm=(a+b)/2f=m^2-2g=a^2-2IFg*f<0THENb=mELSEa=mENDIFLOOPUNTILABS(a-b)<dORf=0PRINTmEND繼續(xù)程序語言a=1b=2d=0.005DOm=(a+b)/2f=70P33頁B組題1程序框圖程序INPUTa1,b1,c1,a2,b2,c2IFa1<>0THENu=-a2/a1b=b2+b1*uc=c2+c1*uy=c/bx=(c2-b2*y)/a2ELSEy=c1/b1x=(c2-b2*y)/a2ENDIFPRINTx,yENDP33頁B組題1程序框圖程序INPUTa1,b1,c1,a71開始程序框圖輸入a1,b1,c1,a2,b2,c2a1≠0?是u=-a2/a1b=b2+b1uc=c2+c1uy=c/bx=(c2-b2y)/a2否y=c1/b1輸出x,y結(jié)束開始程序框圖輸入a1,b1,c1,a2,b2,c2a1≠0?72

1.2.1基本算法語句——輸入語句、輸出語句和賦值語句1.2.1基本算法語句73復(fù)習(xí)回顧1.算法的的基本邏輯結(jié)構(gòu)有哪幾種?

2.設(shè)計一個算法的程序框圖的基本思路如何?第二步,確定每個算法步驟所包含的邏 輯結(jié)構(gòu),并用相應(yīng)的程序框圖表示.第一步,用自然語言表述算法步驟.第三步,將所有步驟的程序框圖用流程 線連接起來,并加上兩個終端框.復(fù)習(xí)回顧1.算法的的基本邏輯結(jié)構(gòu)有哪幾種?2.743.計算機完成任何一項任務(wù)都需要算法,但是,用自然語言或程序框圖表示的算法,計算機是無法“理解”的.因此我們還需要將算法用計算機能夠理解的程序設(shè)計語言來表示.3.計算機完成任何一項任務(wù)都需要算法,但是,用自然語75這就是這一節(jié)所要研究的主要內(nèi)容——基本算法語句。今天,我們先一起來學(xué)習(xí)輸入語句、輸出語句和賦值語句。程序設(shè)計語言有很多種。如BASIC,F(xiàn)oxbase,C語言,C++,J++,VB等。為了實現(xiàn)算法中的三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu),各種程序設(shè)計語言中都包含下列基本的算法語句:輸入語句輸出語句賦值語句條件語句循環(huán)語句這就是這一節(jié)所要研究的主要內(nèi)容——基本算法程序設(shè)計語言76已知函數(shù)y=x3+3x2-24x+30,求自變量x對應(yīng)的函數(shù)值的算法步驟如何設(shè)計?第一步,輸入一個自變量x的值.第三步,輸出y.第二步,計算y=x3+3x2-24x+30.已知函數(shù)y=x3+3x2-24x+30,求自變量x對應(yīng)的函數(shù)77該算法是什么邏輯結(jié)構(gòu)?其程序框圖如何?開始輸入x結(jié)束輸出yy=x3+3x2-24x+30該算法是什么邏輯結(jié)構(gòu)?其程序框圖如何?開始輸入x結(jié)束輸出yy78

這個程序由4個語句行組成,計算機按語句行排列的順序依次執(zhí)行程序中的語句,最后一行的END語句表示程序到此結(jié)束.INPUT“x=”;x

PRINT“y=”;yEND-------------輸入語句-----------賦值語句-------------輸出語句-------------表示結(jié)束這個程序由4個語句行組成,計算機按語句行排列的順序依次79一.輸入語句

INPUT“提示內(nèi)容”;變量輸入語句的一般格式說明:(1)輸入語句的作用是實現(xiàn)算法的輸入信息功能;(2)“提示內(nèi)容”提示用戶輸入什么樣的信息,變量是指程序在運行時其值是可以變化的量;(3)輸入語句要求輸入的值只能是具體的常數(shù),不能是函數(shù)、變量或表達式;(4)提示內(nèi)容與變量之間用分號“;”隔開,(5)“提示內(nèi)容”和它后面的“;”可以省略;如INPUT“x=”;x或INPUTx一.輸入語句INPUT“提示內(nèi)容”;變量輸入語句的一般格80例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,可以寫成:INPUT“數(shù)學(xué),語文,英語=”;a,b,c注意: INPUT語句還可以給多個變量賦值,變量與變量之間用逗號“,”隔開.其格式為:INPUT“提示內(nèi)容1,提示內(nèi)容2,…”;變量1,變量2,…練一練:1、給定一個任意正整數(shù)n。

2、給定三角形的三條邊長1INPUT“n=”;n2INPUTa,b,c例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,INPUT81二.輸出語句

PRINT“提示內(nèi)容”;表達式①輸出常量,變量的值和字符串等系統(tǒng)信息。②輸出數(shù)值計算的結(jié)果。(1)輸出語句的用途:

輸出語句的一般格式二.輸出語句PRINT“提示內(nèi)容”;表達式①輸出常量82(3)同輸入語句一樣,表達式前也可以有“提示內(nèi)容”.〖思考〗:在課本P7頁圖1.1-2程序框圖中的輸出框的內(nèi)容怎樣用輸出語句來表達?參考答案:輸出框:PRINT“n是質(zhì)數(shù).”PRINT“n不是質(zhì)數(shù).”如P9頁的輸出框可以轉(zhuǎn)化為輸出語句:輸出SPRINT“S=”;S(3)同輸入語句一樣,表達式前也可以有“提示內(nèi)容”.〖思考〗83【例題解析】〖例2〗:編寫程序,計算一個學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績。分析:先寫出算法,畫出程序框圖,再進行編程。結(jié)束開始輸入a,b,c輸出y程序框圖程序:INPUT“Maths=”;aINPUT“Chinese=”;bINPUT“English=”;cPRINT“Theaverage=”;(a+b+c)/3END【例題解析】分析:先寫出算法,畫出程序框圖,再進行編程。結(jié)束84y=(a+b+c)/3輸出y結(jié)束開始例2、編寫程序,計算一個學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績。INPUT“a,b,c”;a,b,cy=(a+b+c)/3PRINT“y=”;yEND輸入a、b、cINPUT“a,b,c”;a,b,cPRINT“y=”;(a+b+c)/3END程序2程序3y=(a+b+c)/3輸出y結(jié)束開始例2、編寫程序,計算一個85三.賦值語句(1)賦值語句的一般格式:變量=表達式(2)作用:先計算出賦值號右邊表達式的值,然后把這個值賦給左邊的變量,使該變量的值等于表達式的值。(3)賦值語句左邊只能是變量名字而不是表達式,如:2=x是錯誤的;右邊表達式可以是一個數(shù)據(jù)、常量或算式;不能利用賦值語句進行代數(shù)式的演算。(如化簡、因式分解、解方程等)(4)一個語句只能給一個變量賦值。(5)對于一個變量可以多次賦值,但變量的取值總是最近被賦值的。三.賦值語句(1)賦值語句的一般格式:變量=表達式(2)作用86(1)錯,變量之間應(yīng)用","號隔開;(2)錯,INPUT語句中只能是變量,而不能是表達式;(3)錯,PRINT語句不能用賦值號"=";(4)正確,PRINT語句可以輸出常量、表達式的值;(5)錯,賦值語句中"="號左右不能互換;(6)錯,不能給一個表達式賦值;(7)錯,一個賦值語句只能給一個變量賦值;(8)正確,該句的功能是將當前T的值平方后再賦給變量T.練習(xí):解析:(1)錯,變量之間應(yīng)用","號隔開;(2)錯,IN87練習(xí):讀下列兩個程序,回答問題.①X=3y=4x=yPRINTx,yEND上述程序最后輸出的x,y分別是為:②

X=3y=4y=xPRINTx,yEND4,43,3練習(xí):讀下列兩個程序,回答問題.①X=3上述程序最后輸出的x88三、課后練習(xí)1:p.24練習(xí)第一題程序程序:INPUT“F=”;FC=(F-32)*5/9PRINT“C=”;CEND三、課后練習(xí)1:p.24練習(xí)第一題程序程序:89取余數(shù)MOD取商\<><=>=冪運算^除法運算/乘法運算功能運算符*Inx|x|功能LOG(x)SQR(x)ABS(x)注意事項函數(shù)名BASIC語言中的常用運算符號取余數(shù)MOD取商\<><=>=冪運算^除法運算/乘法運算功能90〖例3〗:給一個變量重復(fù)賦值。程序:A=10A=A+15PRINT

AENDA的輸出值是多少?

分析:此程序給變量A賦了兩次值.A的初值為10,第二次賦值后,初值被“覆蓋”,A的值變?yōu)?5,因此輸出值是25.〖例3〗:給一個變量重復(fù)賦值。程序:A=10A的輸出值是多少91[變式引申]:在此程序的基礎(chǔ)上,設(shè)計一個程序,要求最后A的輸出值是30.A=10A=A+15PRINT

AA=A+5PRINT

AEND程序:〖例3〗:給一個變量重復(fù)賦值。程序:A=10A=A+15PRINT

AEND對于一個變量可以多次賦值,但變量的取值總是最近被賦值的。[變式引申]:在此程序的基礎(chǔ)上,設(shè)計一個程序,A=10程序:92〖例4〗交換兩個變量A和B的值,并輸出交換前后的值。分析:引入一個中間變量X,將A的值賦予X,又將B的值賦予A,再將X的值賦予B,從而達到交換A,B的值.(比如交換裝滿水的兩個水桶里的水需要再找一個空桶)INPUT

AINPUT

BPRINT

A,BX=AA=BB=XPRINT

A,BEND程序:問題:能否用下列賦值語句交換A,B的值?A=BB=A不能!!!!!!〖例4〗交換兩個變量A和B的值,并輸出交換前后分析:引入一個931:下列給出的輸入,輸出語句正確的是()①輸入語句INPUTa;b;c②輸入語句INPUTx=3③輸出語句PRINTA=4④輸出語句PRINT20,3*22:當x的值為5時,“PRINT“x=”;x”在屏幕上輸出的結(jié)果是()A:5=5B:5C:5=xD:x=5練習(xí)11:下列給出的輸入,輸出語句正確的是()①輸入語句I94INPUT“A,B=”;A,BB=A+BA=B-AB=B-APRINT“A,B=”;A,BEND(運行時從鍵盤輸入3,7)(1)(2)A=-1000A=A+100PRINT“A=”;AEND

將一個變量的值賦給另一個變量,前一個變量的值保持不變;可先后給一個變量賦多個不同的值,但變量的取值總是最近被賦予的值。A=-900A,B=73練習(xí)2.分析下列程序,考慮輸出的結(jié)果是什么?INPUT“A,B=”;A,B(1)(2)A=-100095(3)a=1b=a+3b=b+1PRINT“b=”;b運算結(jié)果是(b=5)

(4)a=2b=3c=4b=c+2c=b+4d=(a+b+c)/3PRINT“d=”;d

運算結(jié)果是()d=6(3)a=1(4)a=2d=696a=2b=3c=a+bb=a+c-bPRINT“a=,b=,c=”;a,b,cEND運算結(jié)果是()(5)(6)x=1x=x*2x=x*3x=x*4PRINTx*5END運算結(jié)果是()a=,b=,c=245120a=2(5)(6)x=1a=,b=,c=2497三、課后練習(xí)2:p.24練習(xí)第二題程序程序:INPUT“a=,b=”;a,bsum=a+bdiff=a-bmul=a*bdiv=a/bPRINTsum,diff,mul,divEND三、課后練習(xí)2:p.24練習(xí)第二題程序程序:98三、課后練習(xí)3:p.24練習(xí)第三題程序程序:INPUT“a=”;aINPUT“b=”;bINPUT“c=”;cp=(a+b+c)/2s=SQR(p*(p-a)*(p-b)*(p-c))PRINT“s=”;sEND三、課后練習(xí)3:p.24練習(xí)第三題程序程序:99三、課后練習(xí)4:p.24練習(xí)第四題程序程序:INPUT“a,b,c=”;a,b,cx=10.4*ay=15.6*bz=25.2*csum=x+y+zPRINT“sum=”;sumEND三、課后練習(xí)4:p.24練習(xí)第四題程序程序:100〖練習(xí)1〗:編寫一個程序,要求輸入一個圓的半徑,便能輸出該圓的周長和面積.(π取3.14)分析:設(shè)圓的半徑為R,則圓的周長C=2πR,面積S=πR2,可以利用順序結(jié)構(gòu)中的INPUT語句,PRINT語句和賦值語句設(shè)計程序。INPUT“R=”;RC=2*3.14*RS=3.14*R^2PRINT

“C=”;CPRINT

“S=”;SEND〖練習(xí)1〗:編寫一個程序,要求輸入一個圓的半徑,便能輸出該圓101讀下列兩個程序語句回答問題.(1)上述兩個程序有何區(qū)別.(2)寫出兩個程序的運行結(jié)果;(a)INPUTXINPUTYX=2013Y=2012X=YPRINTX,YEND(b)INPUTXINPUTYX=2013Y=2012Y=XPRINTX,YEND能力提升(a)20122012(b)20132013讀下列兩個程序語句回答問題.(1)上述兩個程序有何區(qū)別.(a102歸納總結(jié)鞏固提高

水果店的老板忙極了,小新設(shè)計了一個程序幫助老板算賬.已知水晶梨2.4元/千克,葡萄8.6元/千克,哈密瓜4.2元/千克,某顧客分別買這三種水果a,b,c千克.請你將程序補充完整。

INPUT

A=2.4*aB=8.6*bC=4.2*cS=

PRINT

ENDa,b,cA+B+CS歸納總結(jié)鞏固提高水果店的老板忙極了,小新設(shè)計了103〖練習(xí)2〗P24頁T1.程序:INPUT“F=”;FC=(F-32)5/9PRINT“C=”;CEND*〖練習(xí)2〗P24頁T1.程序:INPUT“F104〖練習(xí)3〗P24頁T2.INPUT“a,b(a,b≠0)=”;a,bX=a+bY=a-bZ=abQ=a/bPRINTX,Y,Z,QEND*程序:〖練習(xí)3〗P24頁T2.INPUT“a,b(a,b≠0)=105注:BASIC語言中的標準函數(shù)SQR(x),表示數(shù)x的算術(shù)平方根,ABS(x)表示x的絕對值等.程序:p=(2+3+4)/2t=p

(p-2)

(p-3)

(p-4)S=SQR(t)PRINT“S=”;SEND***〖練習(xí)4〗P24頁T3.ABS(x)=|x|.程序:p=(2+3+4)/2***〖練習(xí)4〗P2106INPUT“a,b,c=”;a,b,cX=10.4*aY=15.6*bZ=25.2*csum=X+Y+ZPRINT“sum=”;sumEND程序:〖作業(yè)1〗P24頁T4.INPUT“a,b,c=”;a,b,c程序:〖作業(yè)1〗P107INPUT“a,b,h=”;a,b,hp=a+bs=p*h/2PRINT“s=”;sEND程序:〖作業(yè)2〗P33頁A組T2.INPUT“a,b,h=”;a,b,h程序:〖作業(yè)2〗P108【課堂小結(jié)】(1)本節(jié)課介紹了輸入語句、輸出語句和賦值語句的結(jié)構(gòu)特點及聯(lián)系. (2)掌握并應(yīng)用輸入語句,輸出語句,賦值語句編寫一些簡單的程序解決數(shù)學(xué)問題,特別是掌握賦值語句中“=”的作用及應(yīng)用.(3)編程一般的步驟:先寫出算法,再進行編程.我們要養(yǎng)成良好的習(xí)慣,也有助于數(shù)學(xué)邏輯思維的形成?!菊n堂小結(jié)】109

比較下列各組語句的區(qū)別,再判斷它們是否正確.(1)①輸入語句INPUT“a=”;a②輸入語句INPUT“a=”,a√╳(2)①輸入語句INPUT“a,b,c=”;a,b;c②輸入語句INPUTa,b,c√“提示內(nèi)容”與變量之間用分號隔開.“提示內(nèi)容”與后面的“;”可省略.變量與變量之間用逗號隔開出PRINT出出出PRINTPRINTPRINT觀察╳比較下列各組語句的區(qū)別,再判斷它們是否正確.√110

比較下列各組語句的區(qū)別,再判斷它們是否正確.(3)①輸出語句PRINT“S=”;7②輸出語句PRINTS=7√╳√╳賦值號左邊是變量,只能給一個變量賦值.╳輸入、輸出語句中不能用賦值號.觀察(4)①賦值語句r=9②賦值語句9=r③賦值語句R=r=9比較下列各組語句的區(qū)別,再判斷它們是否正確.√1111.2.2基本算法語句

——條件語句1.2.2基本算法語句112

算法中的條件結(jié)構(gòu)是由條件語句來表達的,條件語句是處理條件分支邏輯結(jié)構(gòu)的算法語句.條件語句的一般格式滿足條件?語句是否只含一個“分支”的條件結(jié)構(gòu)寫成條件語句為IF

條件THEN

語句體ENDIF當計算機執(zhí)行這種形式的條件語句時,首先對IF后的條件進行判斷,如果條件符合,就執(zhí)行THEN后的語句體,否則執(zhí)行ENDIF之后的語句. 算法中的條件結(jié)構(gòu)是由條件語句來表達的,條件語句是處理條件分113滿足條件?語句1語句2是否含兩個“分支”的條件結(jié)構(gòu)寫成條件語句為IF

條件THEN

語句體1ELSE

語句體2ENDIF

當計算機執(zhí)行上述語句時,首先對IF后的條件進行判斷,如果條件符合,就執(zhí)行THEN后的語句體1,否則執(zhí)行ELSE后的語句體2.滿足條件?語句1語句2是否含兩個“分支”的條件結(jié)構(gòu)寫成條件語114

條件語句的作用 在程序執(zhí)行過程中,根據(jù)判斷是否滿足約定的條件而決定是否需要轉(zhuǎn)換到何處去。需要計算機按條件進行分析、比較、判斷,并按判斷后的不同情況進行不同的處理。條件語句的作用115【例題解析】〖例1〗:編寫程序,輸入一元二次方程ax2+bx+c=0的系數(shù),輸出它的實數(shù)根。一元二次方程的根有三種不同情況:設(shè)判別式△=b2-4ac(1)當△>0時,一元二次方程有兩個不等的實數(shù)根.(2)當△=0時,一元二次方程有兩個相等的實數(shù)根.(3)當△<0時,一元二次方程沒有實數(shù)根.算法分析:【例題解析】〖例1〗:編寫程序,輸入一元二次方程ax2+bx116是【程序框圖】開始輸入a,b,c△=b2-4ac△≥0?方程無實數(shù)根22結(jié)束否11△=0?輸出p是否x1=p+qx2=p-q輸出x1,x2是【程序框圖】開始輸入a,b,c△=b2-4ac△≥0?方程117【程序】INPUT

“a,b,c=”;a,b,cd=b*b-4*a*c

IFd>=0THENp=-b/(2*a)q=SQR(d)/(2*a)IFd=0THENPRINT“Onerealroot:”;pELSEx1=p+qx2=p-q

PRINT“Tworealroots:“;x1,x2ENDIFELSEPRINT“Norealroot!”ENDIFEND【程序】INPUT“a,b,c=”;a,b,c118〖例2〗:編寫程序,使得任意輸入的3個整數(shù)按從大到小的順序輸出。

算法分析:用a,b,c表示輸入的3個整數(shù);為了節(jié)約變量,把它們重新排列后,仍用a,b,c表示,并使a≥b≥c.具體操作步驟如下。 第一步:輸入3個整數(shù)a,b,c.

第二步:將a與b比較,并把小者賦給b,大者賦給a.

第三步:將a與c比較.并把小者賦給c,大者賦給a,此時a已是三者中最大的。 第四步:將b與c比較,并把小者賦給c,大者賦給b,此時a,b,c已按從大到小的順序排列好。 第五步:按順序輸出a,b,c.〖例2〗:編寫程序,使得任意輸入的3個整數(shù)按從大到小的順序輸119b=cc=tb=tc=ta=c【程序框圖】開始輸入a,b,cb>a?是t=aa=b否c>a?是t=a否c>b?t=b是否輸出a,b,c交換a,b的值結(jié)束b=cc=tb=tc=ta=c【程序框圖】開始輸入a,b,c120【程序】INPUT

“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND【程序】INPUT“a,b,c=”;a,b,cIFc121

【課堂小結(jié)】

本節(jié)課主要學(xué)習(xí)了條件語句的結(jié)構(gòu)、特點、作用以及用法,并懂得利用它解決一些簡單問題。條件語句使程序執(zhí)行產(chǎn)生的分支,根據(jù)不同的條件執(zhí)行不同的路線,使復(fù)雜問題簡單化。 條件語句一般用在需要對條件進行判斷的算法設(shè)計中,如判斷一個數(shù)的正負,確定兩個數(shù)的大小等問題,還有求分段函數(shù)的函數(shù)值等,往往要用條件語句,有時甚至要用到條件語句的嵌套?!菊n堂小結(jié)】122【課堂練習(xí)】1.課本P29頁T2.讀程序,說明程序的運行過程.INPUT“x=:”;xIF9<xANDx<100THENa=x\10b=xMOD10x=10*b+aPRINTxENDIFEND如果有兩個或是兩個以上的并列條件時,用“AND”把它們連接起來?!癨”用來取商.此處表示x除以10的商.“MOD”用來取余數(shù).此處表示x除以10所得余數(shù)為b.[問題]如輸入的數(shù)x=86,則輸出的結(jié)果是什么?68此程序用于交換一個兩位數(shù)的個位和十位數(shù)字.【課堂練習(xí)】1.課本P29頁T2.讀程序,說明程序的運行過程1232.課本P29頁T1.INPUT“a,b,c=”;a,b,cIFa+b>cANDa+c>bANDb+c>aTHENPRINT“Yes.”ELSE

PRINT“No.”ENDIFEND參考答案:2.課本P29頁T1.INPUT“a,b,c=”;a,b1243.課本P29頁T3.編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵盤輸入一個整數(shù),輸出該數(shù)的奇偶性.INPUT“a=”;aIFaMOD2=0THENPRINT“Even.”ELSE

PRINT“Odd.”ENDIFEND參考答案:3.課本P29頁T3.編寫求一個數(shù)是偶數(shù)還是奇數(shù)的程序,從鍵1254.課本P29頁T4.閏年指年份能被4整除但不能被100整除,或者能被400整除的年份.編寫一個程序,判斷輸入的年份是否為閏年.INPUT“Pleaseinputayear:”;yb=yMOD4c=yMOD100d=yMOD400IFb=0ANDc<>0THENPRINT“Leapyear.”ELSEIFd=0THEN

PRINT“Leapyear.”ELSEPRINT“Notleapyear.”ENDIFENDIFEND參考答案:表示c≠04.課本P29頁T4.閏年指年份能被4整除但不能被100整除126小常識:

地球繞太陽公轉(zhuǎn),每年并不是365天,而是多出來5個多個小時,這樣的話,每四年就會多將近1天,所以就放在2月的第29天了,閏年由此誕生。由于不是準確地多出來24小時,所以基本上每經(jīng)過24個閏年就不會多出1天了,但還是會多出幾分鐘的,如果從公元元年開始計的話正好也就是逢100的年份大多數(shù)時候不是閏年,這樣把多出的那幾分鐘再攢著,經(jīng)過400年后,就會有一個逢100的年份是閏年,比如公元1600年是閏年,1700、1800、1900年都不是,2000年才是閏年,下一次是2400年

小常識:地球繞太陽公轉(zhuǎn),每年并不是365天,而是多出來51275.編寫一個程序,輸入兩個整數(shù)a,b,判斷a是否能被b整除.INPUT“a,b=”;a,bIFaMODb=0THENPRINT“bdividesa.”ELSE

PRINT“bdoesnotdividea.”ENDIFEND參考答案:5.編寫一個程序,輸入兩個整數(shù)a,b,判斷a是否能被b整除.1286.(P33頁B組T3)INPUT“x=”;xIFx<1THENy=xELSEIFx>=1ANDx<10THEN

溫馨提示

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

評論

0/150

提交評論