題型1:算法概念 例1.下列說(shuō)法正確的是( ) A.算法就是某個(gè)問(wèn)題的解題過(guò)程, B.算法執(zhí)行后可以產(chǎn)生不同的結(jié)果, C.解決某一個(gè)具體問(wèn)題算法不同結(jié)果不同, D.算法執(zhí)行步驟的次數(shù)不可以為很大.否則無(wú)法實(shí)施. 解析:答案為選項(xiàng)B,選項(xiàng)B.例如:判斷一個(gè)整數(shù)是否為偶數(shù).結(jié)果為“是偶數(shù) 和“不是偶數(shù) 兩種,選項(xiàng)A .算法不能等同于解法,選項(xiàng)C.解決某一個(gè)具體問(wèn)題算法不同結(jié)果應(yīng)該相同.否則算法構(gòu)造的有問(wèn)題,選項(xiàng)D.算法可以為很多次.但不可以無(wú)限次. 點(diǎn)評(píng):算法一般是機(jī)械的.有時(shí)需要進(jìn)行大量的重復(fù)計(jì)算.只要按部就班去做.總能算出結(jié)果.通常把算法過(guò)程稱(chēng)為“數(shù)學(xué)機(jī)械化 .數(shù)學(xué)機(jī)械化的最大優(yōu)點(diǎn)是它可以借助計(jì)算機(jī)來(lái)完成,實(shí)際上處理任何問(wèn)題都需要算法.如:中國(guó)象棋有中國(guó)象棋的棋譜.走法.勝負(fù)的評(píng)判準(zhǔn)則,而國(guó)際象棋有國(guó)際象棋的棋譜.走法.勝負(fù)的評(píng)判準(zhǔn)則,再比如申請(qǐng)出國(guó)有一系列的先后手續(xù).購(gòu)買(mǎi)物品也有相關(guān)的手續(xù)--. 例2.下列語(yǔ)句中是算法的個(gè)數(shù)為( ) ①?gòu)臐?jì)南到巴黎:先從濟(jì)南坐火車(chē)到北京.再坐飛機(jī)到巴黎, ②統(tǒng)籌法中“燒水泡茶 的故事, ③測(cè)量某棵樹(shù)的高度.判斷其是否是大樹(shù), ④已知三角形的一部分邊長(zhǎng)和角.借助正余弦定理求得剩余的邊角.再利用三角形的面積公式求出該三角形的面積. A.1 B.2 C.3 D.4 解析:正確選項(xiàng)為C.③中我們對(duì)“樹(shù)的大小 沒(méi)有明確的標(biāo)準(zhǔn).無(wú)法完成任務(wù).不是有效的算法構(gòu)造.①中.勾畫(huà)了從濟(jì)南到巴黎的行程安排.完成了任務(wù),②中.節(jié)約時(shí)間.燒水泡茶完成了任務(wù),④中.純數(shù)學(xué)問(wèn)題.借助正.余弦定理解三角形.進(jìn)而求出三角形的面積. 點(diǎn)評(píng):算法過(guò)程要做到能一步一步的執(zhí)行.每一步執(zhí)行的操作.必須確切.不能含混不清.且在有限步后的必須得到問(wèn)題的結(jié)果. 題型2:經(jīng)典算法 例3.一個(gè)人帶著三只狼和三只羚羊過(guò)河.只有一條船.同船可容納一個(gè)人和兩只動(dòng)物.沒(méi)有人在的時(shí)候.如果狼的數(shù)量不少于羚羊的數(shù)量就會(huì)吃羚羊.該人如何將動(dòng)物轉(zhuǎn)移過(guò)河?請(qǐng)?jiān)O(shè)計(jì)算法? 解析:任何動(dòng)物同船不用考慮動(dòng)物的爭(zhēng)斗但需考慮承載的數(shù)量.還應(yīng)考慮到兩岸的動(dòng)物都得保證狼的數(shù)量要小于羚羊的數(shù)量.故在算法的構(gòu)造過(guò)程中盡可能保證船里面有狼.這樣才能使得兩岸的羚羊數(shù)量占到優(yōu)勢(shì).具體算法如下: 算法步驟: 第一步:人帶兩只狼過(guò)河.并自己返回, 第二步:人帶一只狼過(guò)河.自己返回, 第三步:人帶兩只羚羊過(guò)河.并帶兩只狼返回, 第四步:人帶一只羊過(guò)河.自己返回, 第五步:人帶兩只狼過(guò)河. 點(diǎn)評(píng):算法是解決某一類(lèi)問(wèn)題的精確描述.有些問(wèn)題使用形式化.程序化的刻畫(huà)是最恰當(dāng)?shù)?這就要求我們?cè)趯?xiě)算法時(shí)應(yīng)精練.簡(jiǎn)練.清晰地表達(dá).要善于分析任何可能出現(xiàn)的情況.體現(xiàn)思維的嚴(yán)密性和完整性.本題型解決問(wèn)題的算法中某些步驟重復(fù)進(jìn)行多次才能解決.在現(xiàn)實(shí)生活中.很多較復(fù)雜的問(wèn)題經(jīng)常遇到這樣的問(wèn)題.設(shè)計(jì)算法的時(shí)候.如果能夠合適地利用某些步驟的重復(fù).不但可以使得問(wèn)題變得簡(jiǎn)單.而且可以提高工作效率. 例4.這是中國(guó)古代的一個(gè)著名算法案例:一群小兔一群雞.兩群合到一群里.要數(shù)腿48.要數(shù)腦袋17.多少小兔多少雞? 解析:求解雞兔的問(wèn)題簡(jiǎn)單直觀.卻包含著深刻的算法思想.應(yīng)用解二元一次方程組的方法來(lái)求解雞兔同籠問(wèn)題. 第一步:設(shè)有小雞x只.小兔y只.則有 第二步:將方程組中的第一個(gè)方程兩變乘-2加到第二個(gè)方程中去.得到.得到y(tǒng)=7, 第三步:將y=7代入(1)得x=10. 點(diǎn)評(píng):解決這些問(wèn)題的基本思想并不復(fù)雜.很清晰.但敘述起來(lái)很煩瑣.有的步驟非常多.有的計(jì)算量很大.有時(shí)候完全依靠人力完成這些工作很困難.但是這些恰恰是計(jì)算機(jī)的長(zhǎng)處.它能不厭其煩的枯燥的.重復(fù)的.繁瑣的工作.但算法也有優(yōu)劣.我們要追求高效. 題型3:順序結(jié)構(gòu) 例5.寫(xiě)出通過(guò)尺軌作圖確定線段AB一個(gè)5等分點(diǎn)的算法. 解析:我們借助于平行線定理.把位置的比例關(guān)系變成已知的比例關(guān)系.只要按照規(guī)則一步一步去做就能完成任務(wù). 算法分析: 第一步:從已知線段的左端點(diǎn)A出發(fā).任意作一條與AB不平行的射線AP, 第二步:在射線上任取一個(gè)不同于端點(diǎn)A的點(diǎn)C.得到線段AC, 第三步:在射線上延AC的方向截取線段CE=AC, 第四步:在射線上延AC的方向截取線段EF=AC, 第五步:在射線上延AC的方向截取線段FG=AC, 第六步:在射線上延AC的方向截取線段GD=AC.那么線段AD=5AB, 第七步:連接DB, 第八步:過(guò)C作BD的平行線.交線段AB于M.這樣點(diǎn)M就是線段AB的一個(gè)5等分點(diǎn). 程序框圖: 點(diǎn)評(píng):這個(gè)算法步驟具有一般性.對(duì)于任意自然數(shù)n.都可以按照這個(gè)算法的思想.設(shè)計(jì)出確定線段的n等分點(diǎn)的步驟.解決問(wèn)題. 例6.有關(guān)專(zhuān)家建議.在未來(lái)幾年內(nèi).中國(guó)的通貨膨脹率保持在3%左右.這將對(duì)我國(guó)經(jīng)濟(jì)的穩(wěn)定有利無(wú)害.所謂通貨膨脹率為3%.指的是每年消費(fèi)品的價(jià)格增長(zhǎng)率為3%.在這種情況下.某種品牌的鋼琴2004年的價(jià)格是10 000元.請(qǐng)用流程圖描述這種鋼琴今后四年的價(jià)格變化情況.并輸出四年后的價(jià)格. 解析:用P表示鋼琴的價(jià)格.不難看出如下算法步驟: 2005年P(guān)=10000×=10300, 2006年P(guān)=10300×=10609, 2007年P(guān)=10609×=10927.27, 2008年P(guān)=10927.27×=11255.09, 因此.價(jià)格的變化情況表為: 年份 2004 2005 2006 2007 2008 鋼琴的價(jià)格 10000 10300 10609 10927.27 11255.09 程序框圖為: 點(diǎn)評(píng):順序結(jié)構(gòu)只須嚴(yán)格按照傳統(tǒng)的解決數(shù)學(xué)問(wèn)題的解題思路.將問(wèn)題解決掉.最后將解題步驟 “細(xì)化 就可以.“細(xì)化 指的是寫(xiě)出算法步驟.畫(huà)出程序框圖. 題型4:條件結(jié)構(gòu) 例7.設(shè)計(jì)算法判斷一元二次方程是否有實(shí)數(shù)根.并畫(huà)出相應(yīng)的程序框圖. 解析:算法步驟如下: 第一步:輸入一元二次方程的系數(shù):a.b.c, 第二步:計(jì)算△的值, 第三步:判斷△≥0是否成立.若△≥0成立.輸出“方程有實(shí)根 ,否則輸出“方程無(wú)實(shí)根 .結(jié)束算法. 相應(yīng)的程序框圖如下: 點(diǎn)評(píng):根據(jù)一元二次方程的意義.需要計(jì)算判別式△的值.再分成兩種情況處理:(1)當(dāng)△≥0時(shí).一元二次方程有實(shí)數(shù)根,(2)當(dāng)△<0時(shí).一元二次方程無(wú)實(shí)數(shù)根.該問(wèn)題實(shí)際上是一個(gè)分類(lèi)討論問(wèn)題.根據(jù)一元二次方程系數(shù)的不同情況.最后結(jié)果就不同.因而當(dāng)給出一個(gè)一元二次方程時(shí).必須先確定判別式的值.然后再用判別式的值的取值情況確定方程是否有解.該例僅用順序結(jié)構(gòu)是辦不到的.要對(duì)判別式的值進(jìn)行判斷.需要用到條件結(jié)構(gòu). 例8.(1)設(shè)計(jì)算法.求的解.并畫(huà)出流程圖. 解析:對(duì)于方程來(lái)講.應(yīng)該分情況討論方程的解. 我們要對(duì)一次項(xiàng)系數(shù)a和常數(shù)項(xiàng)b的取值情況進(jìn)行分類(lèi).分類(lèi)如下: (1)當(dāng)a≠0時(shí).方程有唯一的實(shí)數(shù)解是, (2)當(dāng)a=0.b=0時(shí).全體實(shí)數(shù)都是方程的解, (3)當(dāng)a=0.b≠0時(shí).方程無(wú)解. 聯(lián)想數(shù)學(xué)中的分類(lèi)討論的處理方式.可得如下算法步驟: 第一步:判斷a是否不為零.若成立.輸出結(jié)果“解為 , 第二步:判斷a=0.b=0是否同時(shí)成立.若成立.輸出結(jié)果“解集為R , 第三步:判斷a=0.b≠0是否同時(shí)成立.若成立.輸出結(jié)果“方程無(wú)解 .結(jié)束. 程序框圖: (2).設(shè)計(jì)算法.找出輸入的三個(gè)不相等實(shí)數(shù)a.b.c中的最大值.并畫(huà)出流程圖. 解析:算法步驟: 第一步:輸入a.b.c的值, 第二步:判斷a>b是否成立.若成立.則執(zhí)行第三步,否則執(zhí)行第四步, 第三步:判斷a>c是否成立.若成立.則輸出a.并結(jié)束,否則輸出c.并結(jié)束, 第四步:判斷b>c是否成立.若成立.則輸出b.并結(jié)束,否則輸出c.并結(jié)束. 程序框圖: 點(diǎn)評(píng):條件結(jié)構(gòu)嵌套與條件結(jié)構(gòu)疊加的區(qū)別是: (1)條件結(jié)構(gòu)疊加.程序執(zhí)行時(shí)需依次對(duì)“條件1 .“條件2 .“條件3 --都進(jìn)行判斷只有遇到能滿(mǎn)足的條件才執(zhí)行該條件對(duì)應(yīng)的操作. (2)條件結(jié)構(gòu)的嵌套中.“條件2 是“條件1 的一個(gè)分支.“條件3 是“條件2 的一個(gè)分支.--依此類(lèi)推.這些條件中很多在算法執(zhí)行過(guò)程中根據(jù)所處的分支位置不同可能不被執(zhí)行. (3)條件結(jié)構(gòu)嵌套所涉及的“條件2 .“條件3 --是在前面的所有條件依次一個(gè)一個(gè)的滿(mǎn)足“分支條件成立 的情況下才能執(zhí)行的此操作.是多個(gè)條件同時(shí)成立的疊加和復(fù)合. 題型5:循環(huán)結(jié)構(gòu) 例9.設(shè)計(jì)一個(gè)算法.求的值.并劃出程序框圖.. 解析:算法步驟: 第一步:sum=0, 第二步:i=0, 第三步:sum=sum+2i, 第四步:i=i+1, 第五步:判斷i是否大于49.若成立.則輸出sum.結(jié)束,否則返回第三步重新執(zhí)行. 程序框圖: 點(diǎn)評(píng):1.如果算法問(wèn)題里涉及的運(yùn)算進(jìn)行了許多次重復(fù)的操作.且先后參與運(yùn)算的數(shù)之間有相同的規(guī)律.就可引入變量循環(huán)參與運(yùn)算.應(yīng)用于循環(huán)結(jié)構(gòu).在循環(huán)結(jié)構(gòu)中.要注意根據(jù)條件設(shè)計(jì)合理的計(jì)數(shù)變量.累加和累乘變量及其個(gè)數(shù)等.特別要求條件的表述要恰當(dāng).精確. 查看更多

 

題目列表(包括答案和解析)

定義閉集合S:若a,b∈S,則a+b∈S,a-b∈S.
(1)舉一例,真包含于R的無(wú)限閉集合;
(2)求證:對(duì)任意兩個(gè)比集合S1,S2,S1⊆R,S2⊆R,存在c∈R,但c∉S1∪S2

查看答案和解析>>

下列四個(gè)有關(guān)算法的說(shuō)法中,正確的是
②③④
②③④
.( 要求只填寫(xiě)序號(hào) )
(1)算法的某些步驟可以不明確或有歧義,以便使算法能解決更多問(wèn)題;
(2)正確的算法執(zhí)行后一定得到確定的結(jié)果;
(3)解決某類(lèi)問(wèn)題的算法不一定是唯一的;
(4)正確的算法一定能在有限步之內(nèi)結(jié)束.

查看答案和解析>>

( 1) 下面算法的功能是         .

(2) 下列算法輸出的結(jié)果是(寫(xiě)式子)         

(3)下圖為一個(gè)求20個(gè)數(shù)的平均數(shù)的程序,在橫線上應(yīng)填充的語(yǔ)句為         

 

查看答案和解析>>

寫(xiě)出下列程序框圖表示的算法功能.

(1)如1-1-14圖(1)的算法功能是(a>0,b>b)____________________.

(2)如1-1-14圖(2)的算法功能是_____________________.

        

圖(1)            圖(2)

          圖1-1-14

查看答案和解析>>

下面給出一個(gè)問(wèn)題的算法:

S1  輸入x.

S2  若x≤2,則執(zhí)行S3;否則執(zhí)行S4.

S3  輸出-2x-1.

S4  輸出x2-6x+3.

問(wèn)題:

(1)這個(gè)算法解決的是什么問(wèn)題?

(2)當(dāng)輸入的x值為多大時(shí),輸出的數(shù)值最?

查看答案和解析>>


同步練習(xí)冊(cè)答案