算法(人教版)老師版2_第1頁
算法(人教版)老師版2_第2頁
算法(人教版)老師版2_第3頁
算法(人教版)老師版2_第4頁
算法(人教版)老師版2_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第7課時基本算法語句(循環(huán)語句)【教法建議】1 循環(huán)語句的教學(xué)也應(yīng)通過實例,結(jié)合循環(huán)結(jié)構(gòu)的程序框圖進行。2 教材中介紹了DO語句和WHILE語句兩種循環(huán)語句,前者是在循環(huán)次數(shù)已知時使用的循環(huán),后者是前測試的當(dāng)型循環(huán)教學(xué)過程中要通過程序框圖將兩者區(qū)別講清。具體處理時,要通過實例的對比加以說明。【問題情境】用算法求36999時,可以按逐個相加的方式進行,但這樣的算法程序太長,操作不方便。按怎樣的算法結(jié)構(gòu)可以簡單算法過程呢?如何表示這種算法程序?解借助循環(huán)語句。I3SUM0WHILEI5 A=SUM/5 PRINT A END例21990年我國人口為11億。如果每年的人口增長率為1.5%,多少年后人

2、口達(dá)到或超過15億?設(shè)計一個算法解決上面的問題。畫出程序框圖,寫出算法程序。解根據(jù)題意,n年后人口為11(11.5%)n,現(xiàn)在就是找使11(11.5%)n15的最小正整數(shù)n的值。為此可考慮用循環(huán)語句,從n1開始檢驗。 此算法的程序框圖是n111(1+1.5%)n15輸出nYnn+1N此算法程序為 M=11 N=1WHILE Mm I=I+1LOOP UNTIL InEND 其中A和B是兩個循環(huán)操作的步驟?!緶y試反饋】1下列程序運行次數(shù)是A、B、C、D中的哪一種? (D)I=7DOPRINTI I=I+5LOOP UNTIL I90ENDA14B15C16D17提示:I從7開始,每操作一次后加5

3、,接著再操作一次,直至I90為止,而751790,故操作了17次。2下面的程序運行后輸出的結(jié)果是 (C)I1WHILEI8 I=I+2 S=2*I+3 WEND PRINT S END A 17B19C21D23提示:對S來說,只有最后一次操作是有效的,而根據(jù)程序,I最后一次操作時的先取7,加2后取9,故S29321,應(yīng)選C。3要使以下UNTIL循環(huán)執(zhí)行20次,循環(huán)變量的初值應(yīng)當(dāng)是 (初始值是14)K= DOK=K-1LOOP UNTIL K (8) I=I+1LOOP UNTIL I4END(說明:其中的“TAB(n)”的功能是行前空n個字符)提示:每行打印8個,故應(yīng)填8。5已知函數(shù)f(x)

4、= ,實數(shù)a1=f(1),a2=f(a1),an1f(an)。試寫出用循環(huán)語句表示的求a8的算法,畫出程序框圖,并寫出算法程序。A1Af(A)n1nn+1n=8N輸出AY解 程序框圖:程序A1n1WHILEn=8AA/(1+A) n=n+1 WEND PRINT A END6將1開始的奇數(shù)按順序累加,直到其和等于或大于100為止。要求輸出表示這些奇數(shù)相加并得到運算結(jié)果的算式。i1n0sum0sumsum+iSum100ii+2nn+1Y輸出“”;iN輸出“=”;sum輸出sum,n輸出i解 程序框圖此算法程序為: i=1 PRINT i n=1 sum=0 WHILE sumS THENSai

5、 ENDIF LOOPUNTILinPRINTSEND8有一個三位數(shù),當(dāng)把百位數(shù)作十位數(shù),十位數(shù)作個位數(shù),而個位數(shù)作百位數(shù)時,則得到一個新的三位數(shù)。原來的三位數(shù)是新三位數(shù)的2倍還多3。試編制適當(dāng)?shù)某绦蛘页龇弦蟮娜粩?shù)。解算法分析:一個三位數(shù),百位數(shù)在19之間變化,十位數(shù)、個位數(shù)可在09之間變化,但由于個位數(shù)要變換到新三位數(shù)中的百位數(shù)上去,故只能在19之間變化。要求出這些三位數(shù),可用“窮舉法”。采用三重循環(huán),由外、中、內(nèi)三層循環(huán)分別控制百位、十位和個位的變化。程序如下:I1DOJ0DOK1DOMI100J10KNK100I10JIFM2N3THENPRINTMKK1LOOPUNTILK9JJ

6、1LOOPUNTILJ9II1LOOPUNTILI9END第8課時習(xí)題課【雙基演練】1下面四個語句中不正確的打印語句是 (D)APRINTABCBPRINT“A”;BCCPRINT“ABC”DPRINTA;BC提示:A與BC之間不是字符與數(shù)值的連接,不應(yīng)用“;”。2下面的程序運行的結(jié)果是 (C)N0I0WHILEI30I(I1)(I1)NN1WENDPRINTNENDA0B3C4D29提示:將初始值I0代入,求得新I1,N變成1,這是第1次循環(huán);130,符合循環(huán)條件,第2次循環(huán)時,I變?yōu)?,N取值為2;4=0 THEN Y=6 ELSE Y=5 (END IF) PRINT Y END提示:條

7、件語句的終止需要說明。4.按下面的程序運行后輸出的S的值是。 (120)I=1DOS0 K=1 J=1 DO J=J*K K=K+1 LOOP UNTIL KI S=S+J I=I+1 LOOP UNTIL I5 PRINT S END提示:此程序分內(nèi)、外兩層兩個循環(huán),由于外循環(huán)每一次都使J1,S0,故只要考慮最后一次循環(huán),即I5時,分別計算了J12345120,故S0J120?!痉独庾x】1輸入三角形的三邊長,判斷能否構(gòu)成一個三角形。試給出表示這個算法的程序。解程序框圖輸入a,b,ca+bcYN輸出“不能構(gòu)成三角形”b+caNa+cbNYY輸出“能構(gòu)成三角形” 程序:INPUTa,b,c I

8、F a+b=c THEN PRINT “不能構(gòu)成三角形”ELSEIF b+c=a THEN PRINT “不能構(gòu)成三角形”ELSEIFa+c2004成立的最小正整數(shù)n的算法過程。n1sum0Sum=2004N輸出nYnn+1sumsum+n解程序框圖 程序:n=1 sum=0 WHILE sum50NY輸出k解 程序框圖:程序:k=0 i=1 DO INPUT ai IF aiMOD 20 THEN k=k+1 END IF i=i+1 LOOP UNTIL i50 PRINT k END【測試反饋】1下列程序的運行結(jié)果是 (C)A5B4IFB=ATHENBABELSEBABPRINTBEND

9、A9B4C1D0提示:條件不成立,執(zhí)行ELSE分支,B被賦值為AB1,選C。2下面的程序運行時輸出的結(jié)果是 (D) I=1S=0 While I5PRINTYEND提示:DO語句是先執(zhí)行后判斷。每一次循環(huán)時Y與A均增加1,直到A5時為止,于是,共循環(huán)5次,Y輸出結(jié)果為6。4.下列程序的運行結(jié)果是。 (13i1i)A1B2C10DBB4ACIFD=0 THEN X1=(-B+SQR(D)/(2*A) X2=(-B-SQR(D)/(2*A) PRINT “X1=”; X1,“X2”;X2ELSEPRINT“X1”;B/(2A);“”;SQR(D)/(2A);“i”,PRINT“X2”;B/(2A)

10、;“”;SQR(D)/(2A);“i”ENDIFEND提示:這個程序是求方程x2+2x+10=0的根,由于判別式小于0,此方程無實數(shù)根,這里輸出的是這個方程的虛數(shù)根(感興趣的同學(xué)以后可以選修“復(fù)數(shù)”的有關(guān)內(nèi)容)。注意:其中SQR(X)為取X的平方根。5按下列程序運行后的結(jié)果是。 (4)A0XY=10 IF XY100 THEN A=A+1 ELSE IF XY50 THEN A=A+2 ELSE A=A+4 END IF END IF PRINT A END提示:由于不符合循環(huán)的條件,應(yīng)執(zhí)行ELSE分支,而此分支中的條件也不滿足,又應(yīng)執(zhí)行它的ELSE分支,故A被賦值為4。6求出所有能被7整除的

11、兩位數(shù)。寫出這個算法程序。解 I=10 DO IF I MOD 7=0 THEN PRINT I END IF I=I+1 LOOP UNTIL I=100 END7火車站對乘客退票要收取一定的費用,收費辦法是:按票價每10元(不足10元按10元計算)核收2元,票價在2元以下的不退。試分步寫出將票價為x元的車票退掉后,返還的金額y元的算法,畫出程序框圖,并寫出這個算法程序(可用取整函數(shù)x表示,不超過x的最大整數(shù)在算法程序中可用ENT(x)表示)。輸入xx2Ny0Yyx-2x MOD 10=0YNyx-2(+1)輸出y解 程序框圖: 程序:INPUTxIFX2THENy=0 ELSE IF x

12、MOD 10=0THEN y= x-2*ENT(x/10) ELSE y= x-2*(ENT(x/10)+1) END IF END IF PRINT y END第9課時算法案例(輾轉(zhuǎn)相除法與更相減損)【教法建議】1 教學(xué)中重點在算法本身,對其理論依據(jù)可作為課后活動的材料。2 適當(dāng)介紹本案例的背景,特別是對更相減損法必須加以介紹,體現(xiàn)教材的文化價值。3教學(xué)重心應(yīng)放在算法過程的設(shè)計上,引導(dǎo)學(xué)生畫出程序框圖,并根據(jù)算法的結(jié)構(gòu)特點選擇恰當(dāng)?shù)乃惴ㄕZ句,對輾轉(zhuǎn)相除法進行描述。4在提出問題時,也可以先讓學(xué)生獨立設(shè)計求兩個正整數(shù)的最大公約數(shù)的算法(完全可以從較小數(shù)開始,逐次減1地對正整數(shù)進行檢驗)。5通過實

13、例讓學(xué)生了解到更相減損與輾轉(zhuǎn)相除法各有優(yōu)點,如對于求不止兩個數(shù)的最大公約數(shù),我國的更相減損法就更顯出其優(yōu)越性例如,求623,1 424,801,1 513四個數(shù)的最大公約數(shù),可以不拘次序地挑選最方便的,從較大數(shù)中減去較小數(shù),求其等數(shù)即可:(623,1 424,801,1 513)=(623,1 424 - 801,801 - 623,1513 - 1424)=(623,623,178,89)=(623 - 89 6,623 - 89 6,178 - 89,89)=(89,89,89,89)= 89【問題情境】1小李問老師怎樣求兩個正整數(shù)的最大公約數(shù),老師畫了一個程序框圖(如下):“你按這個框圖

14、進行吧”。寫下兩個數(shù)a,ba=b將較大的數(shù)換為兩數(shù)之差打印aYN(1)用12和15兩個數(shù)試一下;(2)用198與72兩個數(shù)試一下(3)你能由此發(fā)現(xiàn)一種求兩個正整數(shù)的最大公約數(shù)的方法嗎?解 (1)15123, 12399366333是12和15的最大公約數(shù)。 (2)198-72=126, 126-72=54, 72-54=18, 54-18=36, 36-18=18 18是198和72的最大公約數(shù)。 (3)這就是教材中所介紹的求兩個正整數(shù)的最大公約數(shù)的“更相減損術(shù)”。【范例解讀】例1分別用輾轉(zhuǎn)相除法、更相減損法求204與85的最大公約數(shù)。解方法1(輾轉(zhuǎn)相除法)第一步20485234;第二步 85

15、34217;第三步 341720 17是204與85的最大公約數(shù)。方法2(更相減損法):第一步20485119;第二步1198534;第三步 853451;第四步 513417;第五步 341717。17是204與85的最大公約數(shù)。例2根據(jù)輾轉(zhuǎn)相除法的思想,設(shè)計求兩個正整數(shù)a,b(ab)的最大公約數(shù)的算法過程,并畫出程序框圖,寫出算法程序。輸入a,br=a MOD br=0輸出aa=bb=rNY解 程序INPUTa,bDOr=a MOD b a=b b=r LOOP UNTIL r=0 PRINT a END【歸納點拔】1運用輾轉(zhuǎn)相除法找出兩個正整數(shù)a,b的最大公約數(shù)的步驟是S1輸入兩個正整數(shù)

16、a,b(ab); S2rab的余數(shù); S3如果r不等于零,那么ab,br,轉(zhuǎn)S2 S4輸出最大公約數(shù)a?!緶y試反饋】1396和480的最大公約數(shù)是 (C)A4B6C12D242如果a,b是整數(shù),且ab0,ra mod b,則a與b的最大公約數(shù)是 (D)Ar BbCb-r Db與r的最大公約數(shù)3已知a=333,b=24,則使得a=bq+r,(q,r均為自然數(shù),且0rb)成立的q和r的值分別為。 (q=13,r=21)4用輾轉(zhuǎn)相除法與更相減損法求333與24的最大公約數(shù)時的循環(huán)次數(shù)分別為。提示:輾轉(zhuǎn)相除法需要3次循環(huán),更相減損法需要21次循環(huán)。5設(shè)計一個算法,計算兩個正整數(shù)a,b的最小公倍數(shù)。解算

17、法設(shè)計思想:對正整數(shù)逐一進行檢驗??捎贸绦蚩驁D表示輸入a,bn MOD a=0n=1n=n+1NYNn MOD b=0Y輸出n6根據(jù)更相減損法的思想,設(shè)計求兩個正整數(shù)a,b的最大公約數(shù)的算法過程,并畫出程序框圖。解不妨設(shè)ab.輸入a,br=a-br=0輸出bYNa=Max(b,r)b=Min(b,r)7設(shè)計求出前100個正整數(shù)中的所有素數(shù)的一個算法,并用程序框圖表示。解算法設(shè)計思想:因為1和100都不是素數(shù),故可從2開始,對299這98個自然數(shù)逐一進行檢驗。在對某個正整數(shù)k進行檢驗時,可對從2到k1逐一檢驗其是否為的約數(shù)。程序框圖k=3i=2k MOD i=0Yk=k+1+=1k=100NNi

18、=100Nk=k+1Y結(jié)束輸出2Y 8編程輸出十位數(shù)字與個位數(shù)字的和能被7整除,百位數(shù)字與十位數(shù)字的和能被3整除的所有3位數(shù)。解程序: I=1 Do J=0 DO K=0 DO IF (J+K) MOD 7=0,(I+J)MOD 3=0 THEN PRINT I*100+J*10+K END IFKK1 LOOP UNTIL K9JJ1 LOOP UNTIL J9II1 LOOP UNTIL I9 END第10課時算法案例(秦九韶法)【教法建議】1先通過具體實例介紹并說明,計算機中實施乘法運算比實施加減運算復(fù)雜,因此,“好”算法的一個標(biāo)準(zhǔn)是“盡量減少使用乘法運算次數(shù)”。2通過實例(求一元多項式

19、的值),讓學(xué)生自主設(shè)計算法,以使用乘法次數(shù)最少為“好”的標(biāo)準(zhǔn)。最好在學(xué)生探索的基礎(chǔ)上發(fā)現(xiàn)“秦九韶算法”。3在運用秦九韶算法求多項式的值時,可采取從特殊到一般方式,既使學(xué)生能夠具體問題具體分析,又可降低學(xué)習(xí)難度,并且特殊情形的算法設(shè)計以一般情況下問題的處理有一定的啟發(fā)。4算法程序的設(shè)計根據(jù)學(xué)生狀況安排,不一定介紹。程序框圖必須建立。【問題情境】設(shè)計算法計算下列各式的值,使只使用加法、乘法進行計算的過程中使用乘法的次數(shù)最少(1)x2+2x+3;(2)x4+x3+x2+x+1。解(1)x2+2x+3=x(x+2)+3,按此式的運算步驟計算時,只要使用1次乘法運算。(2)x4+x3+x2+x+1=x(

20、x(x(x+1)+1)+1)+1,按此式的運算步驟計算時,只要使用3次乘法運算?!痉独庾x】例1設(shè)計求x=2時,x8+x7+x2+x+1的值的算法,并給出描述這個算法的程序。解根據(jù)秦九韶算法,可以運用循環(huán)語句描述算法過程。x2 S1I1DOS=x*S+1 I=I+1 LOOP UNTIL I8 PRINT S END例2用秦九韶算法設(shè)計求多項式 f(x)=x3+2x2-3x+8輸入xS=1I=1I3輸出SYN輸入aIS=xS+aI的值的算法,畫出程序框圖。解:f(x)=x(x(x+2)-3)+8 設(shè)a1=2,a2=-3,a3=8,則求f(x)值的程序框圖為【歸納點拔】1根據(jù)教材P28中對秦九韶

21、算法求多項式的值的方法,可得其算法設(shè)計思想:構(gòu)造遞推關(guān)系式,并重復(fù)運用這種一次的遞推關(guān)系式進行操作,故可用循環(huán)語句表示這個算法。2注意:在操作過程中,遞推關(guān)系式中的系數(shù)一般是變化的,故在循環(huán)體中應(yīng)包含不斷輸入系數(shù)的操作過程?!緶y試反饋】1計算多項式x22x+9的值時,最少需要進行乘法運算的次數(shù)是 (A)A1B2C3D4提示:x2-2x+9=x(x-2)+9.2當(dāng)x=5時,求(x2+x+1)(x2-x+1)的值,如果以使用乘法次數(shù)少為好的算法的標(biāo)準(zhǔn),那么,對于下列算法(1)分別直接計算x2+x+1和x2x+1的值,再求所得結(jié)果的積(2)將原式化為x4+x2+1,再分別求出x4,x2的值,最后求它

22、們與1的代數(shù)和(3)分別對x2+x+1和x2x+1用秦九韶算法求出它們的值,再求所得結(jié)果的積(4)對化簡的結(jié)果x4+x2+1用秦九韶算法最好的算法是 (C)A(1)(3)B(2)(3)C(1)(3)(4)D(3)(4)提示:用秦九韶算法計算乘法次數(shù)。3下面的程序是計算多項式f(x)= 在x=-3時的值。(f(x)=x3+x2+2x+3)i=1F=1DOFF(3)+i i=i+1 LOOP UNTIL i3PRINT“F”;FEND提示:第一次循環(huán):F1(-3)+1;第二次循環(huán):F(3)1(3)2(3)2(3)2;第三次循環(huán):F(3)3(3)22(3)3。4補全下面的程序,以計算當(dāng)x=2時,多項

23、式f(x)=x3+x2+x+1的值。i=1S1DOS (答案:(2*S+1)ii+1LOOP UNTIL i3PRINTSEND提示:f(x)=x(x(x+1)+1)+1,x=2時,f(2)=2(2(2+1)+1)+1。5用程序框圖表示用秦九韶算法求x=3時,2x3-x2+x+5的值的算法過程。解f(x)=2x3-x2+x+5=2(x(x(x-)+)+),設(shè)a1=-,a2=,a3=.程序框圖為x=3S=1I=1I3輸出SYN輸入aIS=xS+aIS=2S 6將第4題中的偽代碼改寫成用“WHILE”語句表示的形式。解I1S1WHILEI15S1200*S PRINT S END8設(shè)計算法,求當(dāng)x

24、=2時,f(x)= 的值。解可以分別求分子H=x3+x2+x+1和G=x3-x2+x-1的值,再求它們的商F。在求H和G值時,用秦九韶算法。x2 H1I1DOH=x*H+1 I=I+1 LOOP UNTIL I3 G1L1DOG=x*G+(1)L L=L+1 LOOP UNTIL L3FH/G PRINT F END第11課時算法案例(排序)【教法建議】1應(yīng)通過實例說明排序在生活中的必要性(高考錄取按分?jǐn)?shù)排序、一些會議、作者排名按姓氏筆畫排序、單位工資發(fā)放表按工資的高低排序等等)。2對簡單的排序問題學(xué)生容易憑直覺直接寫出,教學(xué)中要求學(xué)生將思維過程具體化、步驟化,從而形成方法。3要從多種角度探索

25、排序的方法,要充分發(fā)揮學(xué)生生活經(jīng)驗的作用,讓學(xué)生經(jīng)歷排序的全過程。4由學(xué)生自主建立各種排序方法的算法的程序框圖,不一定介紹算法程序,可視學(xué)生狀況而定?!締栴}情境】1將數(shù)據(jù)9,6,7,12,3按從小到大的順序排列起來。解可以用逐一比較的方法找出5個數(shù)中的最小值3,將它排在第1個;再在剩下的4個數(shù)是找出最小值6,將它排在第2個;依此類推,可將其排成3,6,7,9,12。【范例解讀】例1分別用直接排序法和冒泡排序法對數(shù)據(jù)32,46,23,78,12,17進行排序。解(1)直接排序法第一步將第1、2兩個數(shù)比較,排列成32,46;第二步將第3個數(shù)23插到合適的位置:23,32,46;第三步將第4個數(shù)78

26、插到合適的位置:23,32,46,78;第四步將第5個數(shù)12插到合適的位置:12,23,32,46,78;第五步將第6個數(shù)17插到合適的位置:12,17,23,32,46,78。(2)冒泡排序法第一步比較第1、2兩個數(shù)32,46,前者小于后者,則位置不變:32,46,23,78,12,17;第二步比較46與23,23小于46,則23與46互換:32,23,46,78,12,17;第三步比較46與78,前者小于后者,則位置不變:32,23,46,78,12,17;第四步比較78與12,12較小,則兩者位置互換:32,23,46,12,78,17;第五步同上,將78與17的位置互換:32,23,4

27、6,12,17,78;第六步按第一步到第五步的順序繼續(xù)操作,直至沒有可互換時為止。例2將例1中的兩種排序方法用程序框圖表示成算法。將第1、2兩個數(shù)排序?qū)⒌?個數(shù)插到適當(dāng)位置將第4個數(shù)插到適當(dāng)位置將第5個數(shù)插到適當(dāng)位置將第6個數(shù)插到適當(dāng)位置結(jié)束開始解(1)直接排序法將第1、2兩個數(shù)排序后得到一列數(shù)將新的一列數(shù)中第2、3兩個數(shù)排序后得到一列數(shù)將新得到的一列數(shù)中第3、4兩個數(shù)排序后得到一列數(shù)將新的一列數(shù)中第4、5兩個數(shù)排序后得到一列數(shù)將新的一列數(shù)中第5、6兩個數(shù)排序后得到一列數(shù)上述過程未發(fā)生次序變化Y輸出這列數(shù)N(2)【歸納點拔】1直接排序法的特點是:從第2個數(shù)開始排起,每次都是將這個數(shù)在它前面已排

28、好的數(shù)組中找到它的“位置”,這種排法中第n次操作后,前n個數(shù)據(jù)的順序已經(jīng)排好。2冒泡排序法的特點是逐步調(diào)整,每“一趟”操作完畢后,較小的數(shù)都向上浮了一位,只要操作次數(shù)足夠多,就一定能將小的浮到前面,大的沉到后面。【測試反饋】1下面的算法的功能是 (A)開始輸入一個數(shù)據(jù)aa=32Y輸出aN將a用下一數(shù)據(jù)賦值是否還有數(shù)據(jù)N結(jié)束A查找出一組數(shù)據(jù)中是否有32B將一組數(shù)據(jù)中的第32個數(shù)打印出來B判斷32是一組數(shù)據(jù)中第幾個數(shù)D找出一組數(shù)據(jù)中從小到大排列時第32個數(shù)提示:根據(jù)判斷框中的條件,a32時即輸出可知應(yīng)選A。2按下面的程序進行的操作是 (D)INPUTaINPUTbxa ab bx PRINT a,

29、b ENDA將x賦值給a和b后輸出B將a賦值給x,再將x賦值給b后輸出C使a,b都等于x后輸出 D將兩個變量a與b互換后輸出3若a=3,b5,則按下面的程序輸出的是. (5)INPUTa,b S=a IF bS THEN S=b PRINT S END4完成下面的程序,將三個數(shù)a,b,c按從大到小的順序輸出INPUT“a,b,c=”;a,b,cIFbaTHEN t=a a=b b=t END IF IF ca THEN t = ( a) a = ( c ) c = ( t ) END IF IF cb THEN t = (b) b = (c) c = (t) END IF PRINT a,b,

30、c END將第1、2兩個數(shù)排序?qū)⒌?個數(shù)插到適當(dāng)位置結(jié)束開始5用直接排序法將3個互不相等的實數(shù)a,b,c按從大到小的順序排列起來。試畫出程序框圖。解6寫出一個在三個數(shù)a,b和c中找出第2個小數(shù)的算法(假設(shè)a,b,c互不相同),寫出表示這個算法的程序。解實際上就是將a,b和c排序后,取中間一個數(shù)。故可用第4題中的方法先排序,再將中間一個數(shù)輸出。程序:INPUTa,b,cIFbaTHEN t=a a=b b=t END IF IF ca THEN t = a a = c c = t END IF IF cb THEN t = b b = c c = t END IF PRINT b END7還可以

31、用逐步求最?。ù螅┲档姆椒ㄟM行“選擇法”排序,其設(shè)計思想是:首先在數(shù)組中找最小(大)的元素,并將其第一個位置上的元素對調(diào);再找次?。ù螅┑脑?,并與第二個位置上元素對調(diào),依此類推,直到數(shù)組全部有序。試根據(jù)上述思想,用程序框圖表示這個算法。解輸入這組數(shù)確定最小數(shù)輸出最小數(shù)由剔除最小數(shù)后的所有數(shù)構(gòu)成新的一組數(shù)數(shù)組中只有一個數(shù)NY結(jié)束輸出這個數(shù)8設(shè)計一個算法,將一組數(shù)a1,a2,a10中所有比相鄰兩個數(shù)都大的數(shù)找出來。請用程序框圖表示這個算法。解輸入a1,a2,a10n=2anan-1且 anan+1Y輸出ann9Y結(jié)束n=n+1NN第12課時算法案例(進位制)【教法建議】1通過學(xué)生已有的知識引入,如最常使用的十進制、角度制中的六十進位制,以及其它一些計量單位中進位制,讓學(xué)生感到進位制的選擇是根據(jù)需要而定的,以破除十進制的定勢。2介紹二進制時要結(jié)合計算機電路的特點進行,說明二進制的重要性,并由此了解二進制的加、乘運算法則,特別是加法運算法則。3通過具體實例介紹十進制與二進制的互化方式,進而對一般情形加以了解。4在對化十進制的算法,盡量結(jié)合秦九韶算法進行。5通過簡單問題

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論