版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基本算法語句這就是這一節(jié)所要研究的主要內(nèi)容——基本算法語句。程序設(shè)計(jì)語言有很多種。如BASIC,F(xiàn)oxbase,C語言,C++,J++,VB等。為了實(shí)現(xiàn)算法中的三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu),各種程序設(shè)計(jì)語言中都包含下列基本的算法語句:輸入語句輸出語句賦值語句條件語句循環(huán)語句 我們知道,順序結(jié)構(gòu)是任何一個算法都離不開的基本結(jié)構(gòu)。語句n+1語句n 輸入、輸出語句和賦值語句基本上對應(yīng)于算法中的順序結(jié)構(gòu). 計(jì)算機(jī)從上而下按照語句排列的順序執(zhí)行這些語句. 輸入語句和輸出語句分別用來實(shí)現(xiàn)算法的輸入信息,輸出結(jié)果的功能.(如右圖)一.輸入語句
INPUT“提示內(nèi)容”;變量輸入語句的一般格式說明:(1)輸入語句的作用是實(shí)現(xiàn)算法的輸入信息功能;(2)“提示內(nèi)容”提示用戶輸入什么樣的信息,變量是指程序在運(yùn)行時其值是可以變化的量;(3)輸入語句要求輸入的值只能是具體的常數(shù),不能是函數(shù)、變量或表達(dá)式;(4)提示內(nèi)容與變量之間用分號“;”隔開,若輸入多個變量,變量與變量之間用逗號“,”隔開.例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,可以寫成:INPUT“數(shù)學(xué),語文,英語”;a,b,c注意: INPUT語句不但可以給單個變量賦值,還可以給多個變量賦值,其格式為:INPUT“提示內(nèi)容1,提示內(nèi)容2,提示內(nèi)容3,…”;變量1,變量2,變量3,…二.輸出語句
PRINT“提示內(nèi)容”;表達(dá)式說明:(1)“提示內(nèi)容”提示用戶輸出什么樣的信息,表達(dá)式是指程序要輸出的數(shù)據(jù);①輸出常量,變量的值和字符串等系統(tǒng)信息。②輸出數(shù)值計(jì)算的結(jié)果。(2)輸出語句的用途:輸出語句的一般格式(3)同輸入語句一樣,表達(dá)式前也可以有“提示內(nèi)容”.如的輸出框可以轉(zhuǎn)化為輸出語句:輸出SPRINT“S=”;S【例題解析】〖例2〗:編寫程序,計(jì)算一個學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績。分析:先寫出算法,畫出程序框圖,再進(jìn)行編程。結(jié)束開始輸入a,b,c輸出y程序框圖INPUT“Maths,Chinese,English”;a,b,cy=(a+b+c)/3PRINT“y=”;yEND程序:[變式引申]:在此程序的基礎(chǔ)上,設(shè)計(jì)一個程序,要求最后A的輸出值是30.A=10A=A+15PRINT
AA=A+5PRINT
AEND程序:〖例3〗:給一個變量重復(fù)賦值。程序:A=10A=A+15PRINT
AEND〖練習(xí)1〗:編寫一個程序,要求輸入一個圓的半徑,便能輸出該圓的周長和面積.(π取3.14)分析:設(shè)圓的半徑為R,則圓的周長C=2πR,面積S=πR2,可以利用順序結(jié)構(gòu)中的INPUT語句,PRINT語句和賦值語句設(shè)計(jì)程序。INPUT“R=”;RC=2*3.14*RS=3.14*R^2PRINT“C=”;CPRINT“S=”;SEND〖練習(xí)3〗.INPUT“a,b(a,b≠0)=”;a,bX=a+bY=a-bZ=abQ=a/bPRINTX,Y,Z,QEND*程序:注:BASIC語言中的標(biāo)準(zhǔn)函數(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〗ABS(x)=|x|.INPUT“a,b,h=”;a,b,hp=a+bs=p*h/2PRINT“s=”;sEND程序:〖作業(yè)2〗 算法中的條件結(jié)構(gòu)是由條件語句來表達(dá)的,條件語句是處理?xiàng)l件分支邏輯結(jié)構(gòu)的算法語句.條件語句的一般格式滿足條件?語句是否只含一個“分支”的條件結(jié)構(gòu)寫成條件語句為IF條件THEN語句體ENDIF當(dāng)計(jì)算機(jī)執(zhí)行這種形式的條件語句時,首先對IF后的條件進(jìn)行判斷,如果條件符合,就執(zhí)行THEN后的語句體,否則執(zhí)行ENDIF之后的語句.條件語句的作用 在程序執(zhí)行過程中,根據(jù)判斷是否滿足約定的條件而決定是否需要轉(zhuǎn)換到何處去。需要計(jì)算機(jī)按條件進(jìn)行分析、比較、判斷,并按判斷后的不同情況進(jìn)行不同的處理。【例題解析】〖例1〗:編寫程序,輸入一元二次方程ax2+bx+c=0的系數(shù),輸出它的實(shí)數(shù)根。算法分析:一元二次方程的根有三種不同情況:設(shè)判別式△=b2-4ac(1)當(dāng)△>0時,一元二次方程有兩個不等的實(shí)數(shù)根.(2)當(dāng)△=0時,一元二次方程有兩個相等的實(shí)數(shù)根.(3)當(dāng)△<0時,一元二次方程沒有實(shí)數(shù)根.【程序】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-qPRINT“Tworealroots:“;x1,x2ENDIFELSEPRINT“Norealroot!”ENDIFEND〖例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.【程序】INPUT
“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND讀程序,說明程序的運(yùn)行過程.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ù)字.INPUT“a,b,c=”;a,b,cIFa+b>cANDa+c>bANDb+c>aTHENPRINT“Yes.”ELSE
PRINT“No.”ENDIFEND算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實(shí)現(xiàn)的.循環(huán)結(jié)構(gòu)有兩種-----當(dāng)型與直到型.滿足條件?循環(huán)體是否當(dāng)型循環(huán)結(jié)構(gòu)(當(dāng)條件滿足時反復(fù)執(zhí)行循環(huán)體)直到型循環(huán)結(jié)構(gòu)(反復(fù)執(zhí)行循環(huán)體直到條件滿足)循環(huán)體是否滿足條件? 對應(yīng)于程序框圖中的兩種循環(huán)結(jié)構(gòu),一般程序設(shè)計(jì)語言中也有當(dāng)型(WHILE型)和直到型(UNTIL型)兩種語句結(jié)構(gòu)。即WHILE語句和UNTIL語句。(1)WHILE語句的一般格式是:WHILE條件循環(huán)體WEND 其中循環(huán)體是由計(jì)算機(jī)反復(fù)執(zhí)行的一組語句構(gòu)成的。WHLIE后面的“條件”是用于控制計(jì)算機(jī)執(zhí)行循環(huán)體或跳出循環(huán)體的。WHILE——當(dāng)……時候WEND——朝……方向行走(1)WHILE語句的一般格式是WHILE條件循環(huán)體WEND當(dāng)計(jì)算機(jī)遇到WHILE語句時,先判斷條件的真假,如果條件符合,就執(zhí)行WHILE與WEND之間的循環(huán)體;然后再檢查上述條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個過程反復(fù)進(jìn)行,直到某一次條件不符合為止.這時,計(jì)算機(jī)將不執(zhí)行循環(huán)體,直接跳到WEND語句后,接著執(zhí)行WEND之后的語句.滿足條件?循環(huán)體是否當(dāng)型循環(huán)結(jié)構(gòu)(2)UNTIL語句的一般格式是:DO循環(huán)體LOOPUNTIL條件循環(huán)體是否滿足條件?直到型循環(huán)結(jié)構(gòu)DO——做什么LOOPUNTIL——繞環(huán)回線走,直到達(dá)到某種條件為止思考:參照其直到型循環(huán)結(jié)構(gòu)對應(yīng)的程序框圖,說說計(jì)算機(jī)是按怎樣的順序執(zhí)行UNTIL語句的?(2)UNTIL語句的一般格式是:DO循環(huán)體LOOPUNTIL條件循環(huán)體是否滿足條件?直到型循環(huán)結(jié)構(gòu)從UNTIL型循環(huán)結(jié)構(gòu)分析,計(jì)算機(jī)執(zhí)行該語句時,先執(zhí)行一次循環(huán)體,然后進(jìn)行條件的判斷,如果條件不滿足,繼續(xù)返回執(zhí)行循環(huán)體,然后再進(jìn)行條件的判斷,這個過程反復(fù)進(jìn)行,直到某一次條件滿足時,不再執(zhí)行循環(huán)體,跳到LOOPUNTIL語句后執(zhí)行其他語句,是先執(zhí)行循環(huán)體后進(jìn)行條件判斷的循環(huán)語句.提問:通過對照,大家覺得WHILE型語句與UNTIL型語句之間有什么區(qū)別呢?區(qū)別:在WHILE語句中,是當(dāng)條件滿足時執(zhí)行循環(huán)體,而在UNTIL語句中,是當(dāng)條件不滿足時執(zhí)行循環(huán)體。WHILE語句的一般格式WHILE條件循環(huán)體WENDUNTIL語句的一般格式DO循環(huán)體LOOPUNTIL條件例1.編寫程序,計(jì)算自然數(shù)1+2+3+…+99+100的和. 分析:這是一個累加問題.我們可以用WHILE型語句,也可以用UNTIL型語句。WHILE語句開始結(jié)束i=1S=0i=i+1S=S+i輸出Si≤100?是否當(dāng)型循環(huán)結(jié)構(gòu)i=1S=0WHLIEi<=100S=S+ii=i+1WENDPRINTSENDUNTIL語句開始結(jié)束i=1S=0i=i+1S=S+i輸出Si>100?否是直到型i=1S=0DOS=S+ii=i+1LOOPUNTILi>100PRINTSEND開始i=1S=0i≤100?是S=S+ii=i+1否輸出S結(jié)束當(dāng)型循環(huán)結(jié)構(gòu)變式訓(xùn)練(1):編寫程序求:n!=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變式訓(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?開始結(jié)束是f
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新建公寓居住權(quán)使用權(quán)轉(zhuǎn)讓協(xié)議書
- 托管簡易倉庫租賃合同
- 鄉(xiāng)村資產(chǎn)管理之道
- 臨時物業(yè)管理人員招聘合同
- 2025事業(yè)單位聘用勞動合同書范本
- 住宅小區(qū)鋼筋施工協(xié)議
- 模具合作合同樣本
- 2025防腐工程承包合同范本
- 2025知識產(chǎn)權(quán)合同音樂著作權(quán)授權(quán)協(xié)議
- 2025鏟車臺班合同
- 第五單元第四節(jié) 全球發(fā)展與合作 教學(xué)實(shí)錄-2024-2025學(xué)年粵人版地理七年級上冊
- 期末綜合試卷(試題)2024-2025學(xué)年人教版數(shù)學(xué)五年級上冊(含答案)
- 投資控股合同
- 2024-2025學(xué)年上學(xué)期武漢小學(xué)語文六年級期末模擬試卷
- 2023-2024學(xué)年貴州省貴陽外國語實(shí)驗(yàn)中學(xué)八年級(上)期末數(shù)學(xué)試卷(含答案)
- 2025版國家開放大學(xué)專本科《計(jì)算機(jī)應(yīng)用基礎(chǔ)》一平臺在線形考任務(wù) (形考作業(yè)一至三)試題及答案
- 古代漢語專題-003-國開機(jī)考復(fù)習(xí)資料
- 《爭做文明班級》課件
- 遼寧省大連市沙河口區(qū)2022-2023學(xué)年八年級上學(xué)期物理期末試卷(含答案)
- 【MOOC】信號與系統(tǒng)-西北工業(yè)大學(xué) 中國大學(xué)慕課MOOC答案
- 《半導(dǎo)體的基本知識》教學(xué)設(shè)計(jì)
評論
0/150
提交評論