下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
3.2算法及其描述【本節(jié)對(duì)應(yīng)課標(biāo)的內(nèi)容要求】從生活實(shí)例出發(fā),概述算法的概念與特征,運(yùn)用恰當(dāng)?shù)拿枋龇椒ê涂刂平Y(jié)構(gòu)表示簡單算法。【知識(shí)技能要點(diǎn)】1、理解算法的概念2、掌握算法的特征3、從生活實(shí)例出發(fā),概述算法的概念與特征4、運(yùn)用恰當(dāng)?shù)拿枋龇椒ê涂刂平Y(jié)構(gòu)表示簡單算法?!菊n前準(zhǔn)備】智能過河游戲、微課視頻、算法優(yōu)化python程序、課件、課堂小測、學(xué)習(xí)任務(wù)單【教學(xué)過程】〖知識(shí)回顧〗上一節(jié)課我們學(xué)習(xí)體驗(yàn)了計(jì)算機(jī)解決問題的方法和步驟:“分析問題”、“設(shè)計(jì)算法”、“編寫程序”、“調(diào)試運(yùn)行程序”,而算法是整個(gè)問題解決的核心。什么是算法呢?〖游戲?qū)搿接螒蛞?guī)則:三個(gè)人來到河邊準(zhǔn)備過河,這時(shí)他們遇到三個(gè)鬼也準(zhǔn)備過河。但是河上面的船比較小,只能同時(shí)乘兩個(gè)人(或鬼)。條件:鬼在比人多的情況下是會(huì)吃人的。你能想辦法讓這三個(gè)人和這三個(gè)鬼順利地過河嗎?比一比,看看哪個(gè)小組同學(xué)最快完成。請(qǐng)一位同學(xué)根據(jù)本小組體驗(yàn)結(jié)果,將拖動(dòng)左側(cè)項(xiàng)目到對(duì)應(yīng)的步驟上去,完成過河?!贾v授新課〗一、算法的概念師:智力過河問題通過六步得到完美解決,解決問題的過程步驟我們就可以理解為是一個(gè)廣義的算法。那什么是算法呢?我們通過一個(gè)微課來了解一下。播放微課視頻《什么是算法》二、算法的特征簡單點(diǎn)說,算法就是解決問題的方法,我們?cè)賮砘仡櫼幌轮橇^河的算法,從這個(gè)算法中同學(xué)們能發(fā)現(xiàn)算法具有什么特征嗎?①只有六步②每一步都比較明確③每一個(gè)步驟都是可實(shí)施的師:這些就是算法的特征。從剛才我們學(xué)習(xí)的算法概念里,我們也可以找出算法的幾個(gè)特征:有窮性、確定性、可行性。算法:是指在有限步驟內(nèi)求解某一問題所使用的一組定義明確的規(guī)則。通俗地說,算法就是用計(jì)算機(jī)求解某一問題的方法,是能被機(jī)械地執(zhí)行的動(dòng)作或指令的有窮集合。除此外,算法還有兩個(gè)特征:數(shù)據(jù)輸入、數(shù)據(jù)輸出。數(shù)據(jù)輸入指一個(gè)算法必須有零個(gè)或多個(gè)數(shù)據(jù)輸入(如:只有一條print()語句的程序,沒有數(shù)據(jù)輸入);數(shù)據(jù)輸出指一個(gè)算法有一個(gè)或多個(gè)數(shù)據(jù)輸出。如果沒有數(shù)據(jù)輸出,我們的程序就沒有任何意義了。算法的特征都記住了嗎?一句口訣幫助你記憶:“有出入可確定”,是不是好記多了。三、算法的描述韓信是漢高祖劉邦手下的一名大將,相傳他有一個(gè)《韓信點(diǎn)兵》小故事,我們先來欣賞一下。播放《韓信點(diǎn)兵》視頻你能幫劉邦算出有多少士兵嗎?(假設(shè)士兵數(shù)量小于2000人)“3列縱隊(duì)操練,余有1人;5列縱隊(duì)操練,余有2人;7列縱隊(duì)操練,余有2人?!睂?duì)于這樣的問題,應(yīng)該怎樣解決呢?同學(xué)們小組討論分析,試用語言描述士兵數(shù)量計(jì)算的過程。同學(xué)討論回答,老師整理出解決步驟:①S取0②S加1③如果S除以3余1、S除認(rèn)5余2、S除以7余2,則輸出數(shù)S④如果S<2000則跳轉(zhuǎn)至步驟○2,否則執(zhí)行步驟○5⑤程序結(jié)束我們?cè)O(shè)計(jì)的算法要想被別人理解和執(zhí)行,就必須將它描述出來。描述算法常用的的方法有三種:自然語言描述、流程圖描述、偽代碼。剛才同學(xué)們對(duì)韓信點(diǎn)兵問題的回答就是算法的一種描述方法——自然語言描述。(一)自然語言描述算法,就是用人們?nèi)粘K玫恼Z言,如漢語、英語等來描述算法。從韓信點(diǎn)兵的算法中我們可以看出自然語言描述有什么特點(diǎn)?優(yōu)點(diǎn):通俗易懂,符合我們平時(shí)的表達(dá)習(xí)慣。但是平時(shí)我們的自然語言也有不足。如這句話:我要炒白菜。你怎么理解這句話呢?很顯然,是有歧義的。缺點(diǎn):自然語言描述的不足是對(duì)復(fù)雜問題表述不當(dāng),容易產(chǎn)生歧義性,導(dǎo)致算法執(zhí)行的不確定。除了自然語言,還有一種算法描述方法——流程圖。(二)流程圖描述算法。流程圖描述算法:是用程序框圖來描述算法的一種表示方法。請(qǐng)快速記憶下面流程圖的基本圖形及功能。根據(jù)自然語言描述,將韓信點(diǎn)兵問題算法轉(zhuǎn)化成流程圖。流程圖中用不同的圖形代表不同的功能。請(qǐng)同學(xué)在白板上,拖動(dòng)相應(yīng)環(huán)節(jié)和圖形到流程圖虛線框里,完成流程圖。從韓信點(diǎn)兵的流程圖中,可以看出。流程圖描述算法的優(yōu)點(diǎn):形象、直觀、清晰、簡潔。但它的不足是:需要特定的規(guī)則,運(yùn)用大量圖形符號(hào),書寫不方便。(三)偽代碼描述算法第三種算法描述方法——偽代碼。偽代碼描述算法:是用介于自然語言和計(jì)算機(jī)語言之間的文字和符號(hào)來描述算法。上面的代碼并不是我們計(jì)算機(jī)可以直接執(zhí)行的程序代碼,所以我們稱它為偽代碼。但它接近于我們學(xué)習(xí)的程序代碼了。所以它的優(yōu)點(diǎn):書寫方便,格式緊湊,易于理解,容易向計(jì)算機(jī)程序設(shè)計(jì)語言過渡。但它普適性不強(qiáng)。學(xué)習(xí)了三種算法描述方法,我們來做一個(gè)小游戲:為小蝌蚪找媽媽,將小蝌蚪的詞條拖動(dòng)到對(duì)應(yīng)的青蛙上面。教師對(duì)描述算法的三種方式的特點(diǎn)作個(gè)簡單總結(jié)。以后碰到這樣的問題時(shí),我們可以根據(jù)實(shí)際情況挑選一種合適的方式先對(duì)問題進(jìn)行算法描述,再來編寫程序代碼就可以做到事半功倍了。練習(xí):任意輸入三個(gè)數(shù),輸出三個(gè)數(shù)中最大的值。小組討論,將以上解決問題的算法用流程圖表示出來。(傳屏,對(duì)同學(xué)練習(xí)情況進(jìn)行展示評(píng)價(jià))同一問題可以用不同的算法來實(shí)現(xiàn),所謂條條大路通羅馬。但是,不同的算法往往會(huì)對(duì)解決問題的效率造成很大的影響。四、算法的優(yōu)化算法是計(jì)算機(jī)程序解決問題的核心。設(shè)計(jì)一個(gè)好的算法,非常重要。在同學(xué)們電腦的桌面上有一個(gè)“程序效率”的python語言編寫的程序。已知a+b+c=1000,且a2+b2=c2,求a,b,c的所有自然數(shù)解。運(yùn)行程序,體驗(yàn)一下,看一看運(yùn)行結(jié)果。師:程序除了光標(biāo)在閃動(dòng)外,沒其他的反應(yīng)是吧?不是沒反應(yīng),而是程序在一直高速運(yùn)轉(zhuǎn)。為什么呢?(分析對(duì)比程序優(yōu)化前后時(shí)間效率差異。優(yōu)化前程序用時(shí)1357。15秒;優(yōu)化后程序用時(shí)1.38秒差了近一千倍)通過流程圖對(duì)比,感受算法設(shè)計(jì)差異。算法的差異得到的不僅僅是事半功倍,也可能是事半功千倍,甚至是萬倍億倍。這也是我們學(xué)習(xí)算法的意義和目的。五、三種基本控制結(jié)構(gòu)還是以剛才的流程圖為例:綠色框內(nèi)部分,每個(gè)步驟都是按照先后順序執(zhí)行的,執(zhí)行完一遍后,算法結(jié)束,這種結(jié)構(gòu)就是算法控制的順序結(jié)構(gòu)。藍(lán)色框內(nèi)部分,表示算法中出現(xiàn)了分支,根據(jù)分支條件的真或假進(jìn)行選擇,選擇其中的某一條分支執(zhí)行,這種結(jié)構(gòu)我們稱為選擇結(jié)構(gòu)。桔色框內(nèi)部分,表示在算法中的某一步或某幾步需要反復(fù)執(zhí)行,直到判斷條件為真或假時(shí)才可終止,這種結(jié)構(gòu)就是循環(huán)結(jié)構(gòu)。以上就是算法描述中常用到的三種基本控制結(jié)構(gòu),而任何復(fù)雜的算法都可以用這3種基本控制組合來表示。使用三種基本控制結(jié)構(gòu)的組合來描述算法,可以改善算法的清晰度,提高算法的可讀性,原因如下:以控制結(jié)構(gòu)為單位,只有一個(gè)入口和一個(gè)出口,各單位之間接口簡單,比較容易獨(dú)立地理解每一單位。縮小了算法的靜態(tài)描述與動(dòng)態(tài)執(zhí)行過程之間的差異,使得兩者容易對(duì)應(yīng),易于理解?!菊n堂檢測】智力大比拼,完成課堂評(píng)測。課堂檢測:1.關(guān)于算法的特征,以下說法正確的一項(xiàng)是()A、算法的步驟可以永遠(yuǎn)執(zhí)行B、算法的每一個(gè)步驟都需要有明確的定義,不能有歧義出現(xiàn)C、算法必須要有數(shù)據(jù)輸入D、算法可以沒有數(shù)據(jù)的輸出2.下列關(guān)于算法的描述,正確的是()A、算法只能用自然語言描述B、算法必須在有限步驟內(nèi)實(shí)現(xiàn)C、算法就是一種高級(jí)程序設(shè)計(jì)語言D、算法可以有0個(gè)或多個(gè)輸入,但只能有一個(gè)輸出3.用流程圖表示條件”A>B”是否成立,要用到以下哪個(gè)圖形?()A、平行四邊形B、圓角形C、菱形D、直角矩形4.下列問題不能用算法描
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度生物質(zhì)能源項(xiàng)目合作協(xié)議商訂3篇
- 二零二五年度網(wǎng)絡(luò)安全檢測服務(wù)協(xié)議3篇
- 二零二五年度物流運(yùn)輸貨款擔(dān)保服務(wù)合同3篇
- 二零二五年度融資咨詢與貸款安排合同
- 二零二五年度校園多媒體教學(xué)設(shè)備供應(yīng)合同2篇
- 二零二五年度裝載機(jī)租賃與租賃價(jià)格動(dòng)態(tài)調(diào)整合同3篇
- 2024年秋學(xué)期南京名小四年級(jí)語文上冊(cè)期中模擬試卷(含答案)
- 【小升初語文閱讀專題訓(xùn)練】考點(diǎn)28 詩文佳句欣賞-統(tǒng)編版2025年小升初語文閱讀專題訓(xùn)練(含答案)
- 香洲區(qū)2024年中考語文三模試卷
- 二零二五年度玻璃制品貼牌加工與銷售協(xié)議
- 化學(xué)-山東省濰坊市、臨沂市2024-2025學(xué)年度2025屆高三上學(xué)期期末質(zhì)量檢測試題和答案
- 領(lǐng)導(dǎo)學(xué) 課件全套 孫健 第1-9章 領(lǐng)導(dǎo)要素- 領(lǐng)導(dǎo)力開發(fā)
- 2024-2025學(xué)年七年級(jí)上學(xué)期語文期末考前押題卷(統(tǒng)編版2024+含答案)
- 土建定額培訓(xùn)課件
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實(shí)踐指導(dǎo)材料之13:“6策劃-6.2創(chuàng)新目標(biāo)及其實(shí)現(xiàn)的策劃”(雷澤佳編制-2025B0)
- 2024年保護(hù)環(huán)境的建議書范文(33篇)
- 2025新譯林版英語七年級(jí)下單詞默寫表
- 退休人員公益活動(dòng)合作合同
- 四年級(jí)數(shù)學(xué)(四則混合運(yùn)算帶括號(hào))計(jì)算題專項(xiàng)練習(xí)與答案
- 急診創(chuàng)傷疼痛護(hù)理
- 2022年期貨從業(yè)資格《期貨基礎(chǔ)知識(shí)》考試題庫(含典型題)
評(píng)論
0/150
提交評(píng)論