




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第1課時(shí)算法的概念【教法建議】1.教學(xué)時(shí)可先從學(xué)生熟知的事例廣義地描述算法——某一工作的方法和步驟,例如廣播操圖解是廣播操的算法,菜譜是做菜的算法,歌譜是一首歌曲的算法,空調(diào)說明書是空調(diào)使用的算法等.然后再舉例說明本章主要討論的是計(jì)算機(jī)能實(shí)現(xiàn)的算法——一類問題的機(jī)械的、統(tǒng)一的求解方法,例如解方程(組)的算法,函數(shù)求值的算法,作圖問題的算法等.對算法的三個(gè)特性,也宜采用通過實(shí)例使學(xué)生逐步感受的方式,引導(dǎo)學(xué)生自我體驗(yàn),不需作過多的闡述與說明?!締栴}情境】1.發(fā)電子郵件的方法很多,請給出一種操作步驟。解第一步打開電子信箱;第二步點(diǎn)擊“寫郵件”;第三步輸入發(fā)送地址;第四步輸入主題;第五步輸入信件內(nèi)容;第六步點(diǎn)擊“發(fā)送郵件”。2.求解方程組2x+y=7,①4x+5y=11②請將求解這個(gè)方程組的一個(gè)操作過程按一定的步驟表示出來。解第一步方程①不動(dòng),將方程②中x的系數(shù)除以方程①中x的系數(shù),得到乘數(shù)m=eq\f(4,2);第二步方程②減去m乘以方程①,消去方程②中的x項(xiàng),得到2x-y=7,3y=-3;第三步將上面的方程組自下而上回代求解,得到y(tǒng)=-1,x=4。所以原方程組的解為x=4,y=-1.【范例解讀】寫出求533除以7的商和余數(shù)的算法過程。解第一步以5除以7進(jìn)行試商,不夠除;第二步以53除以7進(jìn)行試商,發(fā)現(xiàn)商為7(即最終結(jié)果的首位數(shù)),余數(shù)為4;第三步以余數(shù)4作十位數(shù),3作個(gè)位數(shù),即43對7進(jìn)行試商,得商6余1;第四步得到結(jié)果:533除以7的商為76,余數(shù)為1。已知lg2=0.3010,lg3=0.4771,寫出求log64的值的一個(gè)算法。解第一步將log64用常用對數(shù)表示:log64=eq\f(lg4,lg6);第二步將lg4,lg6用lg2,lg3表示:log64=eq\f(2lg2,lg3+lg2);第三步將lg2,lg3分別用0.3010,0.4771代入計(jì)算:log64=eq\f(20.3010,0.3010+0.4771)≈0.7737.說明:要通過算法過程的分析,讓學(xué)生感受解決問題的思維過程,培養(yǎng)學(xué)生有條理地分析問題、解決問題的能力?!練w納點(diǎn)拔】1.算法,就是做某一工作的方法和步驟,也就是一類問題的機(jī)械的、統(tǒng)一的求解方法,求算法就是給出完成一件事情的操作程序。2.算法具有下列特點(diǎn):(1)有限性:一個(gè)算法在執(zhí)行有限個(gè)步驟后必須結(jié)束.(2)確定性:算法的每一個(gè)步驟和次序應(yīng)當(dāng)是確定的.(3)有效性:算法的每一個(gè)步驟都必須是有效的?!緶y試反饋】1.算法是指………………………(B)A為解決問題而編寫的計(jì)算機(jī)程序B為解決問題而采取的方法與步驟C為解決問題而需要采用的計(jì)算機(jī)語言D為解決問題而采用的計(jì)算方法寫出解方程3x+5=0的一個(gè)算法過程。解第一步將常數(shù)項(xiàng)5移到方程右邊,得:3x=-5;第二步在方程兩邊同時(shí)除以3,即得原方程的解:x=-eq\f(5,3)。3.將“打電話”的過程描述成一個(gè)算法,這個(gè)算法可表示為:解第一步拿起話筒;第二步拔號(hào);第三步通話。由此說明算法具有下列特性:算法的每一步驟都是有效的;每個(gè)步驟和次序時(shí)確定的;有限個(gè)步驟后一定能夠結(jié)束。作棱長為2的正三棱柱的直觀圖的算法過程可表示為解第一步在邊長為2的正三角形ABC中,取水平邊AB所在直線為X軸,AB邊的垂直平分線為Y軸(使C點(diǎn)落在Y軸正半軸上),建立直角坐標(biāo)系XOY;第二步畫出對應(yīng)的X‘軸和Y’軸,使∠X‘O’Y‘=45o;第三步以點(diǎn)O‘為中點(diǎn),在X‘軸上作長度為2的線段A’B’;在X‘軸的正半軸上);第四步在Y‘軸正半軸上取點(diǎn)C‘,使O’C‘=1;第五步連結(jié)A‘C‘、B’C‘,則ΔA’B“C‘即為ΔABC的水平放置的直觀圖;第六步在坐標(biāo)系X‘O’Y‘中,作O’Z‘軸,使∠X’O‘Z’=90O;第七步分別過A‘、B’、C‘作O’Z‘的平行線,并在同側(cè)分別取A’A‘’、B‘B’‘、C’C‘’=2;第八步連結(jié)A‘’B‘’、B‘’C‘’、C‘’A‘’,并加以整理(去掉輔助線,將被遮擋的部分改為虛線),就得到棱長為2的正三棱柱的直觀圖。寫出解方程組x+y=3,(1)y+z=5,(2)z+x=4(3)的一個(gè)算法。解這個(gè)方程組的算法較多,下面是其中一種:第一步將方程(1)、(2)、(3)相加并化簡得x+y+z=6(4);第二步分別將(4)減去(2)、(3)、(1)可得x=1,y=2,z=3.寫出方程組的解x=1,y=2,z=3.6.寫出求357911的值的一個(gè)算法。解第一步計(jì)算3與5的積,得15;第二步計(jì)算15與7的積,得105;第三步計(jì)算105與9的積,得945;第四步計(jì)算945與11的積,得10395。7.用一個(gè)算法將用數(shù)學(xué)模型解決實(shí)際問題的過程表示出來。解第一步將實(shí)際問題用數(shù)學(xué)模型表示;ABAABAEACADAMANA第三步將數(shù)學(xué)模型的解還原為實(shí)際問題的解。8.給出一個(gè)算法,確定給定的線段的三等分點(diǎn).解第一步從已知線段的一個(gè)端點(diǎn)A出發(fā),作一射線;第二步在射線上依次截取AC=CD=DE;第三步連結(jié)BE;第四步分別過點(diǎn)C,D作BE的平行線,交AB于M,N,則點(diǎn)M,N就是線段AB的三等分點(diǎn).第2課時(shí)程序框圖(順序結(jié)構(gòu))【教法建議】1.教學(xué)時(shí),可先用自然語言敘述算法過程,再將算法過程根據(jù)展開的流程進(jìn)行圖示,進(jìn)而引入“流程圖”這一算法表示形式。2.算法含有兩大要素:一是操作.如做菜的操作包括:煎、炸、炒、蒸、煮等等;駕駛汽車的操作包括:開電門、換檔、左轉(zhuǎn)、右轉(zhuǎn)、開燈、關(guān)燈等等.計(jì)算機(jī)算法的操作主要包括:算術(shù)運(yùn)算、邏輯運(yùn)算、關(guān)系運(yùn)算、函數(shù)運(yùn)算等等.二是控制結(jié)構(gòu).它的作用是控制算法各操作的執(zhí)行順序.一個(gè)算法通常由順序、選擇、循環(huán)這三種基本結(jié)構(gòu)組成.本節(jié)重點(diǎn)是用流程圖來描述算法的這三種基本結(jié)構(gòu).3.畫流程圖實(shí)際上是將解決問題的算法用流程圖符號(hào)表示出來,所以首先要搞清楚需要解決什么問題,采用什么算法可以解決.其次再弄清楚初值、循環(huán)情況、條件、表達(dá)式、程序的結(jié)構(gòu)、流向等.4.順序結(jié)構(gòu)學(xué)生容易理解,教學(xué)時(shí)讓學(xué)生自己舉一些只包含順序結(jié)構(gòu)算法的實(shí)例?!締栴}情境】1.輸入42輸入42減去6結(jié)果小于6嗎?是否輸出結(jié)果終止上面的“框圖”可以表示一個(gè)算法嗎?按照這一程序操作時(shí),輸出的結(jié)果是多少?若第一個(gè)“輸入框”中輸入的是77,則輸出的結(jié)果又是多少?答這個(gè)框圖表示的是一個(gè)算法,按照這一程序操作時(shí),輸出的結(jié)果是0。若第一個(gè)輸入框中輸入的是77,則輸出的結(jié)果是5?!痉独庾x】例1半徑為r的圓面積計(jì)算公式為S=r2。當(dāng)r=10時(shí),寫出計(jì)算圓面積的算法,畫出程序框圖。解算法如下:第一步將10賦給變量r;第二步用公式S=r2計(jì)算圓的面積S;第三步輸出圓的面積S。上述算法用程序框圖表示為:rr←10S←r2輸出S例2已知兩個(gè)單元分別存放了變量x和y的值,試給出交換這兩個(gè)變量值的一個(gè)算法,并畫出程序框圖。解為了達(dá)到交換的目的,可以設(shè)置一個(gè)存放中間變量的單元。算法是第一步p←x;第二步x←y;第三步y(tǒng)←p。程序框圖是pp←xx←yy←p【歸納點(diǎn)拔】1.畫程序框圖時(shí)應(yīng)注意的問題(1)先建立解決問題的算法,并將其用自然語言表述。(2)再弄清楚初值、循環(huán)情況、條件、表達(dá)式、程序的結(jié)構(gòu)、流向等.2.順序結(jié)構(gòu)表示的算法過程是依次進(jìn)行多個(gè)處理,可用框圖表示為AABB【測試反饋】1.根據(jù)程序框圖……………………(C)XX=1,Y=2,Z=3XX=Y(jié),Y=X,Z=Y(jié)輸出Z輸出Z終止終止輸出的結(jié)果是A3B1C2D0提示:該算法的第一步分別將X,Y,Z賦于1,2,3三個(gè)數(shù),第二步先使X取Y的值,即X取值變成2,再使Y取X的值,即Y的值也是2,最后讓Z取Y的值,即Z取值也是2,從而第三步輸出時(shí),Z的值是2。2.按下面的順序結(jié)構(gòu)進(jìn)行操作……………………(A)第1步輸入兩個(gè)不相等的實(shí)數(shù)a,b;第2步計(jì)算eq\f(a+b,2);第3步計(jì)算eq\r(ab);第4步比較eq\f(a+b,2)與eq\r(ab)的大小第5步將較大的一個(gè)數(shù)打印出來。A這個(gè)算法打印出的結(jié)果一定是eq\f(a+b,2)B這個(gè)算法打印出的結(jié)果一定是eq\r(ab)C這個(gè)算法打印出的結(jié)果可能是eq\f(a+b,2),也可能是eq\r(ab)D這個(gè)算法不一定能運(yùn)行提示:通過作差比較可以發(fā)現(xiàn),eq\f(a+b,2)≥eq\r(ab),故最后打印出來的是eq\f(a+b,2)。3.給出求點(diǎn)A(2,-1)關(guān)于直線2x-y+4=0的對稱點(diǎn)的一個(gè)算法,并畫出程序框圖。解第一步設(shè)點(diǎn)A(2,-1)關(guān)于直線2x-y+4=0的對稱點(diǎn)為B(a,b);第二步由直線AB與直線2x-y+4=0垂直可得eq\f(b+1,a-2)=-eq\f(1,2)(1);第三步由線段AB中點(diǎn)落在直線2x-y+4=0上可得2·eq\f(2+a,2)-eq\f(b-1,2)+4=0(2);第四步聯(lián)立方程組eq\f(b+1,a-2)=-eq\f(1,2),2·eq\f(2+a,2)-eq\f(b-1,2)+4=0。解得a=-eq\f(26,5),b=eq\f(13,5),從而得到點(diǎn)A(2,-1)關(guān)于直線2x-y+4=0對稱點(diǎn)為(-eq\f(26,5),eq\f(13,5))。設(shè)對稱點(diǎn)B根據(jù)AB與2x-y+4=0垂直得到式(1)設(shè)對稱點(diǎn)B根據(jù)AB與2x-y+4=0垂直得到式(1)根據(jù)AB中點(diǎn)在2x-y+4=0上得到式(2)聯(lián)立方程組解得對稱點(diǎn)坐標(biāo)4.畫出用現(xiàn)代漢語詞典查閱“仕”字的程序框圖。在“部首目錄”中查“二畫在“部首目錄”中查“二畫”中“亻”的頁碼(16)從16頁開始的“亻”部中的“三畫”中查找“仕”的頁碼(1152)翻到1152頁,查閱“仕”5.寫出解不等式組x-2<1,(1)2x+1>5(2)的一個(gè)算法,并畫出程序框圖。解算法:第一步解不等式(1),得x<3;(3)第二步解不等式(2),得x>2;(4)第三步求(3)、(4)的公共部分,得原不等式組的解2<x<3.程序框圖:解不等式(1)解不等式(1)解不等式(2)求上述兩不等式解集的交集6.寫出求過兩點(diǎn)(-1,1)和(3,9)的直線的在x軸上的截距的一個(gè)算法,并用程序框圖表示這個(gè)算法。解算法第一步寫出過點(diǎn)(-1,1)、(3,9)的直線的方程;第二步在直線方程中令y=0,解出x的值,即得此直線在x軸上的截距。第三步輸出x。寫出過點(diǎn)(-1,1)、(3,9)的直線方程在上述方程中令y=0求解對應(yīng)的x寫出過點(diǎn)(-1,1)、(3,9)的直線方程在上述方程中令y=0求解對應(yīng)的x輸出x7.若x1,x2是一元二次方程2x2-3x+1=0的兩個(gè)實(shí)根,求x12+x22的值。給出解決上述問題的一個(gè)算法,并畫出程序框圖。解算法第一步由韋達(dá)定理得x1+x2=eq\f(3,2),x1x2=eq\f(1,2);第二步將x12+x22用x1+x2和x1x2表示出來x12+x22=(x1+x2)2-2x1x2;第三步將x1+x2、x1x2分別用eq\f(3,2)、eq\f(1,2)代入上式得x12+x22=eq\f(5,4).第四步輸出x12+x22的值。程序框圖求x求x1+x2,x1x2的值將x12+x22用x1+x2和x1x2表示將x1+x2、x1x2分別用eq\f(3,2)、eq\f(1,2)代入計(jì)算輸出x12+x228.已知函數(shù)f(x)=eq\f(x,1+x),實(shí)數(shù)a1=f(1),an+1=f(an),(n∈N*)。試寫出一個(gè)求a4的算法,并畫出程序框圖。解算法程序框圖由a1=f(1)求a1由a2=f(a1)求a2由a3=f(a2由a1=f(1)求a1由a2=f(a1)求a2由a3=f(a2)求a3由a4=f(a3)求a4輸出a4第二步計(jì)算a2=eq\f(a1,1+a1)=eq\f(1,3);第三步計(jì)算a3=eq\f(a2,1+a2)=eq\f(1,4);第四步計(jì)算a4=eq\f(a3,1+a3)=eq\f(1,5).第五步輸出a4.第3課時(shí)程序框圖(條件結(jié)構(gòu))【教法建議】1.教學(xué)時(shí)應(yīng)從具體問題出發(fā),根據(jù)算法過程中,需要按給定的條件進(jìn)行分析、比較和判斷,并按判斷的的不同情況進(jìn)行不同的操作,讓學(xué)生體會(huì)到描述這類問題的算法需要用到選擇結(jié)構(gòu)的設(shè)計(jì).這些實(shí)例應(yīng)是學(xué)生所熟悉的,如分段函數(shù)的求值、解一元一次不等式、求解一元二次方程、求實(shí)數(shù)的絕對值等。2.選擇結(jié)構(gòu)的嵌套不要作過高要求,可作為選學(xué)內(nèi)容。【問題情境】1.某市居民用水收費(fèi)的方法是:水費(fèi)=基本費(fèi)+超額費(fèi)+損耗費(fèi)。若每月用水不超過10m3,只付基本費(fèi)8元和每戶每月的定額損耗費(fèi)1元;若用水超過10m3,除了付上面的基本費(fèi)和損耗費(fèi)外,超過部分每m3付2元的超額費(fèi)。試寫出求該戶居民每月的應(yīng)付水費(fèi)y的一個(gè)算法,并畫出該算法的程序框圖。解設(shè)該戶居民每月和水量為x噸。則9(0≤x≤10),y=9+2(x-10)(x>10).上述函數(shù)就是求該戶居民每月水費(fèi)的一個(gè)算法,用程序框圖表示為輸入x輸入xx>10Yy←9+2(x-10)y←9輸出y結(jié)束開始N【范例解讀】開始輸入a,b,ca>b且a>cx開始輸入a,b,ca>b且a>cx←ab>cx←bx←c輸出x結(jié)束YNYN解例2設(shè)計(jì)求解一元二次方程ax2+bx+c=0(a≠0)的一個(gè)算法,并用程序框圖表示。解算法如下:第一步輸入a,b,c;第二步Δ←b2-4ac;第三步如果Δ<0為真,則輸出“方程無實(shí)數(shù)根”,否則x1←eq\f(-b+\r(Δ),2a),x2←eq\f(-b-\r(Δ),2a).根據(jù)上述步驟,可畫出上這一算法的程序框圖輸入a,b,c輸入a,b,cΔ←b2-4acΔ<0輸出“方程無實(shí)數(shù)根”x1←eq\f(-b+\r(Δ),2a),x2←eq\f(-b-\r(Δ),2a)輸出x1,x2結(jié)束YN【歸納點(diǎn)拔】1.對需要按給定的條件進(jìn)行分析、比較和判斷,并按判斷的的不同情況進(jìn)行不同的操作的問題,設(shè)計(jì)算法時(shí)就要用到選擇結(jié)構(gòu)的設(shè)計(jì).2.選擇結(jié)構(gòu)也稱為“分支結(jié)構(gòu)”或“選取結(jié)構(gòu)”,它要先根據(jù)指定的條件進(jìn)行判斷,再由判斷的結(jié)果決定選取執(zhí)行兩條分支路徑中的某一條.3.下圖的虛線框內(nèi)就是選擇結(jié)構(gòu)的一般形式。在A、B兩個(gè)操作選項(xiàng)中,只能執(zhí)行A和B之一,不可能既執(zhí)行A又執(zhí)行B,但A或B兩個(gè)框中可以有一個(gè)是空的,即不執(zhí)行任何操作.AABpYN【測試反饋】1.根據(jù)下面的程序框圖操作,使得當(dāng)成績不低于60分時(shí),輸出“及格”,當(dāng)成績低于60分時(shí),輸出“不及格”…………(A)輸入成績x輸入成績xx≥601及格不及格2則A1框中填“Y”,2框中填“N”B1框中填“N”,2框中填“Y”C1框中填“Y”,2框中可填可不填C2框中填“N”,1框可填可不填2.表示解方程ax+b=0(a,b為常數(shù))的一個(gè)正確的算法是……(D)輸入a,bx輸入a,bx←eq\f(b,a)輸出xB輸入a,bx←-eq\f(b,a)輸出xA輸入a,ba=0輸入a,ba=0x←0輸出xCx←-eq\f(b,a)YN輸入a,ba=0Dx←-eq\f(b,a)輸出xb=0NYNYx∈Rx∈Ф提示:在求解x時(shí),需要在方程兩邊同時(shí)除以a,故對a為0的情況應(yīng)加以討論。3.在表示解不等式ax+b<0(a,b為常數(shù),且a≠0)的算法的程序框圖中,判斷框中應(yīng)填入的內(nèi)容是。(a>0或a>0都可)提示:解一元一次不等式時(shí),需要在不等式的兩邊同時(shí)除以a,故應(yīng)對提示:解一元一次不等式時(shí),需要在不等式的兩邊同時(shí)除以a,故應(yīng)對a的符號(hào)進(jìn)行討論。4.給出下面的算法:輸入x輸入xx是有理數(shù)y←1y←0輸出yYN若x=,則y=(0),若x=3.14159,則y=(1)提示:這個(gè)算法表示的是一個(gè)分段函數(shù),當(dāng)自變量是有理數(shù)時(shí),函數(shù)值為1,否則函數(shù)值為0。5.對于輸入的實(shí)數(shù)x,將求函數(shù)x2+1x≥0,y=-x+1x<0.的函數(shù)值的算法用程序框圖表示。輸入xx輸入xx≥0y←x2+1YNy←-x+1輸出y輸入整數(shù)nn是奇數(shù)輸入整數(shù)nn是奇數(shù)YN輸出1輸出0解7.某地的出租車按如下方法收費(fèi):起步價(jià)10元,可行3km(不含3km);3km到7km(不含7km)按1.6元/km計(jì)價(jià)(不足1km按1km計(jì)算);7km以后都按2.4元/km計(jì)價(jià)(不足1km按1km計(jì)算)。試給出當(dāng)行車路程為xkm時(shí)的車費(fèi)的一個(gè)算法,并用程序框圖表示。解當(dāng)行車路程為xkm時(shí)的車費(fèi)的算法可用下面的函數(shù)表示:100<x<3,y=10+1.6([x-3]+1)3≤x<7,16.4+2.4([x-7]+1)x≥7.其中[x]表示實(shí)數(shù)x的整數(shù)部分。這個(gè)算法的程序框圖是輸入路程x輸入路程x0<x<3Yy←10N3≤x<7y←6.8+1.6[x]YNy←2+2.4[x]輸出y8.輸入一個(gè)學(xué)生的三門成績,判斷其學(xué)習(xí)成績等級(jí)。平均分90分以上(包括90分)為優(yōu)秀、80分至90分為良好(包括80分、其它類同)、70分至80分為中等、60分至70分為及格、60分以下為不及格。試用程序框圖表示上述算法過程。輸入三門成績a,b,cs輸入三門成績a,b,cs←eq\f(a+b+c,3)s≥90Y輸出“優(yōu)秀”s≥80輸出“良好”s≥70輸出“中等”s≥60輸出“及格”輸出“不及格”NYNYNYN第4課時(shí)程序框圖(循環(huán)結(jié)構(gòu))【教法建議】1.教學(xué)中要通過實(shí)例讓學(xué)生感受重復(fù)的過程,以及過多重復(fù)對書寫算法帶來的不便,從而產(chǎn)生建立處理循環(huán)問題的算法結(jié)構(gòu)的需求。2.對直到型循環(huán)結(jié)構(gòu)的結(jié)構(gòu)特點(diǎn)要求學(xué)生能熟練掌握。3.考慮到學(xué)生的接受能力,對當(dāng)型循環(huán)不一定現(xiàn)在介紹,可待學(xué)生有了感性認(rèn)識(shí)和一定的算法設(shè)計(jì)基礎(chǔ)之后,教師再作適當(dāng)?shù)幕仡櫤脱a(bǔ)充.在學(xué)習(xí)算法程序時(shí),就要用到“While語句”,即當(dāng)型循環(huán).【問題情境】1.計(jì)算前5個(gè)正整數(shù)的和時(shí),可以按下面的算法進(jìn)行第一步計(jì)算1+2,得到3;第二步將第一步所得結(jié)果3與3相加,得到6;第三步將第二步所得結(jié)果6與4相加,得到10;第四步將第三步所得結(jié)果10與5相加,得到15。當(dāng)要求計(jì)算前100個(gè)正整數(shù)的和時(shí),可用這種算法嗎?你能找到簡便的算法嗎?解因?yàn)樗惴ㄟ^程完全類同,故可考慮用循環(huán)結(jié)構(gòu)的算法加以描述:nn←1S←1n>6Nn←n+1S←S+n輸出SY【范例解讀】例1給出求91的大于1的最小正約數(shù)的一個(gè)算法,并用程序框圖表示。解設(shè)計(jì)思想:因?yàn)?1的正約數(shù)是不超過91正整數(shù),所以可以對2到91的所有正整數(shù)逐一檢驗(yàn)。I←I←2I是91的約數(shù)輸出IYNI←I+1整數(shù)I作范圍限制。此算法的程序框圖如下:例2設(shè)計(jì)一個(gè)求10個(gè)數(shù)的平均數(shù)的算法。解設(shè)計(jì)思想:先求出10個(gè)數(shù)的和,再求其平均數(shù)??捎醚h(huán)結(jié)構(gòu)對10個(gè)數(shù)據(jù)求和。算法過程:第一步S=0;第二步I=1;第三步輸入G(G為一個(gè)數(shù)據(jù));第四步S=S+G;第五步I=I+1;第六步如果I不大于10,轉(zhuǎn)第三步(即輸入下一個(gè)數(shù)據(jù));第七步A=eq\f(S,10);第八步輸出A。此算法的程序框圖:SS=0I=1輸入GS=S+GI=I+1I>10A←eq\f(S,10)輸出AYN【歸納點(diǎn)拔】1.當(dāng)一個(gè)算法中包含多次重復(fù)執(zhí)行相同類型的操作時(shí),應(yīng)考慮使用循環(huán)結(jié)構(gòu)。2.常見的循環(huán)結(jié)構(gòu)有“直到型”和“當(dāng)型”兩種,其程序框圖分別為:直到型循環(huán)直到型循環(huán)ApYN當(dāng)型循環(huán)ApYN3.當(dāng)型循環(huán)和直到型循環(huán)是可以互相轉(zhuǎn)換的.對同一個(gè)問題,如果分別用當(dāng)型循環(huán)和直到型循環(huán)來處理的話,則兩者判斷的條件恰好相反.【測試反饋】1.按下面的程序框圖運(yùn)行后,所得的I的值為………………(C)I=0I=0J=10J<19YI=I+1J=J+3N輸出IA4B5C3D6提示:當(dāng)J<19時(shí),I每增加1,H增加3,這樣J從10增加到16時(shí)均滿足判斷條件,故I增加3。2.給出下面的程序框圖:SSum=0i=2n=0sum≥100YNi=i+2n=n+1sum=sum+i輸出“+”;i輸出sum,n輸出1輸出“輸出“=”;sum這個(gè)程序框圖的輸出結(jié)果是……………………(C)A1+2+3+……+100=5050sum=5050n=100B1+3+5+……+99=2500sum=2500n=50C1+3+5+……+19=100sum=100n=10D1+2+3+……+14=105sum=105n=14提示:這個(gè)程序框圖表示的算法是,將從1開始的連續(xù)自然數(shù)求和,直到和超過100時(shí)為此。輸出時(shí),不斷將這些自然數(shù)連同加號(hào)都不斷打印出來,故選C。3.給出下面的算法:S1屏幕上顯示兩個(gè)兩位整數(shù);S2提示用戶輸入這兩個(gè)數(shù)的和;S3檢查計(jì)算結(jié)果是否正確,如果是,則顯示“正確”;否則顯示“錯(cuò)誤!再試一次”,然后繼續(xù)輸入計(jì)算結(jié)果,直至結(jié)果正確為止。S4詢問用戶是否繼續(xù)練習(xí),如果用戶回答“Y”,則重復(fù)上述過程;如果回答“N”,則程序退出。將下面的空檔填上適當(dāng)?shù)膬?nèi)容,以完成表示這個(gè)算法的程序框圖開始開始隨機(jī)顯示兩個(gè)兩位數(shù)m,n“請輸入m+n的值”YN終止YN“正確,是否繼續(xù)練習(xí)?”答案正確“錯(cuò)誤!再試一次”4.在下面的空檔內(nèi)填上適當(dāng)?shù)膬?nèi)容,完成這個(gè)用循環(huán)結(jié)構(gòu)表示的求35791113值的程序框圖。開始開始S=1I=I+2S=SII=1I<13YN輸出S提示:求積時(shí),將S的初始值定為1,對任何乘數(shù)都適用;又由于是相鄰奇數(shù)求積,故跨度(即“步長”)為2。5.用程序框圖表示求eq\r(2)的近似值的算法,使誤差不超過0.001。解構(gòu)造函數(shù)f(x)=x2-2,則eq\r(2)是方程f(x)=0在(1,2)上的根。算法過程:第一步取區(qū)間[a,b]的中點(diǎn)x0=eq\f(1,2)(a+b)(其中a=1,b=2);第二步若f(a)f(x0)>0,則eq\r(2)∈(x0,b),以x0代替a;若f(a)f(x0)<0,則eq\r(2)∈(a,x0),以x0代替b;第三步若|a-b|<0.001,計(jì)算終止,此時(shí)eq\r(2)≈x0,否則轉(zhuǎn)第一步。用程序框圖表示:輸入a,b輸入a,bx0←eq\f(1,2)(a+b)f(a)=a2-2f(b)=b2-2f(a)f(x0)<0NYb←x0a←x0|a-b|<0.001輸出x0YN6.用N1代表第一個(gè)學(xué)生的學(xué)號(hào),Ni表示第i個(gè)學(xué)生的學(xué)號(hào),Gi表示第i個(gè)學(xué)生的成績,那么下圖表示了一個(gè)什么樣的算法?i←i←1Gi≥80打印Ni,Gii←i+1i≤50結(jié)束YNYN這個(gè)程序框圖求出了學(xué)號(hào)為150的學(xué)生中成績不低于80分學(xué)生的學(xué)號(hào)與成績。7.設(shè)計(jì)求不超過正整數(shù)n的最大素?cái)?shù)的算法,并將此算法用流程圖表示。解算法思想:對從n到2的正整數(shù),從大到小依次逐一檢驗(yàn)。此算法程序框圖可表示為8.一隊(duì)士兵來到一條有鱷魚的深河的左岸。只有一條小船和兩個(gè)小孩,這條船只能承載兩個(gè)小孩或一個(gè)士兵。試設(shè)計(jì)一個(gè)算法,將這隊(duì)士兵渡到對岸,并將這個(gè)算法用程序框圖表示。解算法:第一步兩個(gè)兒童將船劃到右岸;第二步他們中一個(gè)上岸,另一個(gè)劃回來;第三步兒童上岸,一個(gè)士兵劃過去;第四步士兵上岸,讓兒童劃回來;第五步如果左岸還有士兵,那么轉(zhuǎn)第一步;否則結(jié)束。上述算法用程序框圖表示為兩個(gè)兒童劃到右岸兩個(gè)兒童劃到右岸一個(gè)兒童劃回左岸一個(gè)士兵劃到右岸另一個(gè)兒童劃回岸右岸還有士兵嗎?N結(jié)束Y第5課時(shí)基本算法語句(輸入、輸出、賦值語句)【教法建議】1.在本章教學(xué)時(shí),建議所用符號(hào)相對統(tǒng)一,以免引起混淆.如用賦值語句“x=23”表示給變量x賦值23,就不宜再用“23x”或“x23”等其它形式來表示了.2.本節(jié)對上機(jī)不作要求,有基礎(chǔ)或有興趣的學(xué)生可以將算法程序嘗試上機(jī)通過.3.任何一種程序語言的輸入、輸出語句都十分豐富,教學(xué)時(shí)不必一一列舉.能知道用“INPUY”和“PRINT”分別描述數(shù)據(jù)的輸入和輸出即可.這一部分內(nèi)容的教學(xué)重點(diǎn)應(yīng)放在問題的算法分析上,同時(shí),對于問題的背景多作一些介紹,讓學(xué)生更好地了解中國古代數(shù)學(xué)中的算法思想.【問題情境】已知某學(xué)生一次考試中語文、數(shù)學(xué)和英語學(xué)科的得分分別為85、90、95,試設(shè)計(jì)適當(dāng)?shù)乃惴ㄇ蟪鲞@名學(xué)生的總分和平均分。解Sum=0INPUT“語文成績=”;CINPUT“數(shù)學(xué)成績=”;MINPUT“英語成績=”;ESum=C+M+EA=(1/3)SumPRINT“總分=”;SumPRINT“平均分=”;AEND【范例解讀】例1已知三角形的三邊,試寫出表示求這個(gè)三角形的周長的算法程序。解設(shè)三角形三邊分別為a,b,c,則計(jì)算這個(gè)三角形周長的算法程序可表示為M=0INPUTa,b,cM=a+b+cPRINTMEND例2已知一勻變速運(yùn)動(dòng)的物體的初速度、未速度和加速度分別為V1,V2,a,求物體運(yùn)動(dòng)的距離s。試編寫求解這個(gè)問題的一個(gè)算法的程序框圖,并寫出這個(gè)算法程序。解由題意可知:V2=V1+at,故運(yùn)動(dòng)時(shí)間t=eq\f(V2-V1,a),所以,物體運(yùn)動(dòng)的距離s=V1t+eq\f(1,2)at2=eq\f(V22-V12,2a)據(jù)此,可設(shè)計(jì)算法如下輸入V輸入V1,V2,as←eq\f(V22-V12,2a)輸出s將此算法程序?yàn)镮NPUTV1,V2,as=(V2^2-V1^2)/(2*a)PRINTsEND【歸納點(diǎn)拔】1.“INPUT”語句的一般格式為:“INPUT‘提示字符串’;輸入變量表列”,輸入的變量之間用逗號(hào)“,”隔開;2.輸出語句用“PRINT”表示,其一般格式為:“PRINT‘提示字符串’;需輸出的變量表列”,需輸出的變量之間用“,”隔開?!緶y試反饋】1.賦值語句a=a+1的含意是……………………(C)A把變量a的值存放到a+1中B變量a的值等于a+1的值C把變量a的值加1后賦給變量aD把變量a+1的值存放到a中提示:在算法語句中,“=”具有的是賦值功能,a=a+1即將a+1的值賦于a。2.下列四個(gè)語句中語法正確的是………………(A)AINPUT“A,B,C=”;A,B,CBINPUT;“A,B,C=”;A,B,CCINPUT“A,B,C=”;A;B;CDINPUT“A=”,A,“B=”,B3.若A=3,B=6,則下面程序運(yùn)行后的結(jié)果是。(23)INPUT“A,B=”;A,BC=A*B+5PRINTCEND4.執(zhí)行下面的程序X=1Y=2Z=3X=Y(jié)Y=XZ=Y(jié)PRINTX;Y;ZEND的結(jié)果是。(222)提示:X,Y,Z的初始值分別為1,2,3,執(zhí)行到“X=Y(jié)”時(shí),X的值被賦于2,于是“Y=X”使Y值變?yōu)閄的值2,“Z=Y(jié)”又使Z值變成了2,故輸出的X,Y,Z的值均為2。5.試用偽代碼編寫程序,輸出如下圖形(其中空格可用函數(shù)TAB(n)表示,它的含義是:空n個(gè)字符)********************解PRINTTAB(7);“**”PRINTTAB(6);“****”PRINTTAB(5);“******”PRINTTAB(4);“******”END6.已知一個(gè)正三棱柱的底面邊長為a,高為h,用輸入、輸出語句和賦值語句表示計(jì)算此三棱柱的體積的算法。解INPUTaINPUThV=SQR(3)a^2h/4PRINTVEND7.請編寫程序,實(shí)現(xiàn)三個(gè)變量A,B,C的值按順序互換,即A→B→C→A之間的交換。解分兩步進(jìn)行。先實(shí)現(xiàn)A,B交換,再實(shí)現(xiàn)A,C交換。INPUTAINPUTBINPUTCD=AA=BB=DD=CC=AA=DEND8.某市2004年112月的產(chǎn)值分別為3.8,4.2,5.3,6.1,5.6,4.8,7.3,4.5,6.4,5.8,4.7,6.5(億元),該市要統(tǒng)計(jì)每季度的月平均產(chǎn)值及2003年的月平均產(chǎn)值,試分別用賦值語句和輸入、輸出語句表示計(jì)算上述各個(gè)平均值的算法。解設(shè)112月的產(chǎn)值分別為a1,a2,…,a12,INPUTa1,a2,…a12S1=a1+a2+a3S2=a4+a5+a6S3=a7+a8+a9S4=a10+a11+a12S=S1+S2+S3+S4M1=S1/3M2=S2/3M3=S3/3M4=S4/3M=S/12PRINTM1,M2,M3,M4,MEND第6課時(shí)基本算法語句(條件語句)【教法建議】1.要實(shí)現(xiàn)選擇結(jié)構(gòu),就要用到條件語句.教學(xué)中應(yīng)結(jié)合選擇結(jié)構(gòu)的程序構(gòu)圖介紹條件語句。在編制算法程序時(shí),一般應(yīng)先用自然語言建立算法,再將其用程序構(gòu)圖直觀表示,最后根據(jù)框圖編寫程序。2.一般情況下,建議只使用“塊If語句”來表達(dá)選擇結(jié)構(gòu),以便于教和學(xué).書寫時(shí),為了清晰和方便閱讀,通常將Then部分和Else部分縮進(jìn)書寫.“塊If語句”可以嵌套?!締栴}情境】下面的問題可用哪種結(jié)構(gòu)的算法表示?如何表示這種結(jié)構(gòu)的算法程序?輸入一個(gè)正整數(shù)n,如果是偶數(shù),就將其輸出。解INPUTnIFnMOD2=0THENPRINTnENDIFEND【范例解讀】例1.輸入兩個(gè)數(shù)A和B,將較大的數(shù)打印出來。解INPUTA,BIFA>BTHENPRINTAELSEPRINTBENDIFEND例2.已知函數(shù)1,(x>0)y=0,(x=0)-1,(x<0).輸入x的值,計(jì)算y的值。寫出表示這個(gè)計(jì)算過程的算法程序。解INPUTxIFx>0THENY=1ELSEIFx=0THENy=0ELSEy=-1ENDIFENDIFEND【歸納點(diǎn)拔】對條件結(jié)構(gòu)的算法用偽代碼表示時(shí)需用條件語句;條件語句的一般格式是IFATHENBELSESENDIF其中A為條件,B是在條件成立時(shí)執(zhí)行的操作,S為條件不成立時(shí)執(zhí)行的操作;3.有的條件語句也可以不帶“ELSE”分支,即滿足條件時(shí)執(zhí)行B,否則不執(zhí)行任何操作。4.條件語句可以進(jìn)行嵌套。在進(jìn)行條件語句的嵌套時(shí),書寫要有層次,對內(nèi)層的條件語句有兩種寫法:(1)IFA1THENB1ELSEIFA2THENB2ELSESENDIFENDIF(2)IFA1THENB1ELSEIFA2THENB2ELSESENDIFA1A1成立嗎語句B1YA2成立嗎N語句B2Y語句S后繼語句其相應(yīng)的程序框圖為【測試反饋】1.下列程序運(yùn)行的結(jié)果是……………………(A)X=23IFXMOD3=0THENy=1ELSEy=0ENDIFENDA0B1C1,0D0,1提示:根據(jù)條件語句,如果X除以3的余數(shù)是0,那么y取1,否則y取0,因?yàn)閄=23,不是3人倍數(shù),故y取0。2.按下列程序運(yùn)行的結(jié)果是………………(D)A=4.5B=6IFA>=5THENB=B+1ELSEB=B-3B=B+2ENDIFIFB>=4THENB=B*BELSEB=A+BENDIFPRINTBENDA10.5B11.5C16D25提示:A=4.5,第一個(gè)選擇結(jié)構(gòu)條件不滿足,則B=B-3=3,B=B+2=5;而第二個(gè)選擇
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寄賣合同協(xié)議書
- 小孩上學(xué)租房合同
- 翻譯服務(wù)協(xié)議合同
- 天花吊頂裝修合同
- 合同之店員聘用合同
- 房屋中介居間合同
- 學(xué)校食堂肉類供貨合同年
- 有關(guān)設(shè)備購銷合同
- 新材料生產(chǎn)加工合同
- 星酒店投資技術(shù)服務(wù)合同
- 網(wǎng)咖成本預(yù)算明細(xì)表
- 譯林版四年級(jí)下冊第一單元課件
- 化工制圖CAD教程-工藝流程圖課件
- 計(jì)算機(jī)軟件保護(hù)課件
- 人教版高中政治必修3政治與法治《第一課歷史和人民的選擇》教案及教學(xué)反思
- 【基于哈佛分析框架的上市公司財(cái)務(wù)研究-以中百集團(tuán)為例】
- 中職生心理特征和常見心理問題
- 美術(shù)第二課堂活動(dòng)方案2篇
- (名師整理)部編人教版語文初中課內(nèi)古詩文大全(五四制)
- 非常好的精益生產(chǎn)案例-值得借鑒
- 東南亞潤滑油市場研究報(bào)告和展望
評論
0/150
提交評論