資源簡介 (共28張PPT)學科:信息技術年級:高一出版社:廣東教育出版社教材:必修1 數據與計算課程:3.2 算法及其描述、3.2 算法及其描述學習目標01020304理解算法的概念,掌握算法的基本特征掌握描述算法的3種基本方法理解程序的3種基本結構,能夠利用3種基本結構解決問題培養和提升解決問題的邏輯能力和算法意識話說一位農夫帶著一只狼、一只羊和一框蔬菜過河,無奈船小,農夫每次只能運送一樣東西,考慮到狼吃羊、羊吃菜,請幫農夫設計一個方案,把狼、羊、菜安全的運送過河吧。請同學們設計方案,幫助農夫實現“羊、狼、疏菜共同渡河”的愿望,在游戲中驗證方案是否可行。(1分鐘)農夫過河問題010203方案總共有多少步?運送順序是怎樣的呢?思考什么是算法 農夫過河問題思考閱讀教材48頁,找出算法的概念,試著理解。(2分鐘)一、 算法的概念簡單地說,算法就是解決問題的具體方法和步驟。解決問題的過程,就是實現算法的過程。是指有限步驟內求解某一問題所使用的的一組定義明確的規則。通俗地說,算法就是用計算機求解某一問題的方法,是能被機械地執行的動作或指令的有窮集合。結合教材49頁內容,以小組為單位,討論算法的特征,并解釋五個特征分別有什么含義。(3分鐘)自主探究二、算法的特征行業PPT模板http://www./hangye/①有窮性:計算步驟是有限的②確定性:每一個步驟必須有確切的定義③數據輸入:必須有0個或多個數據輸入④數據輸出:一個或多個數據輸出⑤可行性:每個計算步驟都在有限時間內完成,可以有效執行?死循環?模棱兩可0個輸入是算法本身給出了初始條件?無功而返求:從小到大正整數累加if(y==0):z=x/y鞏固練習下列關于算法的特征,描述正確的是( )A.算法的步驟可以永遠執行B.算法的每一個步驟都需要有明確的定義,不能有歧義出現C.算法必須有數據的輸入D.算法可以沒有數據的輸出B口訣有出入可確定數據輸出(1個/多個)有窮性確定性可行性數據輸入(0個/多個)用自然語言描述算法用流程圖描述算法用偽代碼描述算法自然語言是人們日常使用的語言,如漢語、英語。用自然語言表達算法,就是把算法的各個步驟,依次用人們熟悉的自然語言表示出來。流程圖,也稱為程序框圖,它是算法的一種圖形化表示方法。偽代碼是介于自然語言和計算機程序語言之間的一種算法描述。三、算法的描述方法游戲互動游戲規則用10秒記憶10個物品及其編號,之后根據提問回答5個物品的編號,看誰記住的最準。自然語言1.顯示游戲規則、物品及其編號10秒2.清屏3.給出一個物品名稱4.回答編號6.重復以上步驟。直到答完5題5.如果回答正確,答對題數+17.輸出答對的題數出題答題輸出結果流程圖流程圖開始輸入k=0,t=0編號是否正確輸出物品及編號輸出物品輸入編號k=k+1t=t+1t>=5輸出k結束NNYYK表示答對編號的題目數,t表示呈現了幾道題目。偽代碼示例:輸入3個數,打印輸出其中最大的數。Begin(算法開始)輸入 A,B,CIF A>B 則 A→Max否則 B→MaxIF C>Max 則 C→MaxPrint MaxEnd (算法結束)分析歸納算法三種描述方法的優劣算法描述的方法 優 勢不 足自然語言表示法流程圖表示法偽代碼表示法通俗易懂,描述方便,容易掌握很難清晰表示復雜算法;由于自然語言的歧義性,容易導致算法執行的不確定性;描述語言過長,不易翻譯成計算機語言直觀,清晰,明確,簡潔需要特定的規則,運用大量的圖形符號;書寫不便,修改不易。書寫方便,格式緊湊,易于理解編程語言種類繁多,偽代碼語句不容易規范,易誤讀;不適合沒有代碼基礎的初學者。討論順序結構表示程序中的各步操作按出現的先后順序執行。順序結構四、算法的三種基本機構計算體重指數BMI開始輸入身高(m)h、體重(kg)w計算BMI=w/h2輸出BMI結束選擇結構表示程序的處理步驟出現了分支,需要根據某一特定的條件選擇其中的一個分支執行。選擇結構開始輸入身高(m)h、體重(kg)w計算BMI=w/h2BMI>24 結束輸出“你需要加強體育鍛煉了”輸出“請繼續保持現在的運動強度”YN循環結構表示程序反復執行某個或某些操作,直到判斷條件為假(或為真)時才可終止循環。循環結構開始輸入身高(m)h、體重(kg)w計算BMI=w/h2BMI>24 結束輸出“你需要加強體育鍛煉了”輸出“請繼續保持現在的運動強度”YN人數n=0n=n+1n<100 NY三種結構順序結構選擇結構循環結構使用三種基本控制結構的組合來描述算法,可以改善算法的清晰度,提高算法的可讀性。任何復雜的算法都可以用三種基本結構組合來表示三種基本控制結構三種基本控制結構的作用(1)順序結構表示程序中的各步操作按出現的先后順序執行。(2)選擇結構表示程序的處理步驟出現了分支,需要根據某一特定的條件選擇其中的一個分支執行。(3)循環結構表示程序反復執行某個或某些操作,直到判斷條件為假(或為真)時,才終止循環。習題1.算法就是用計算機求解某一問題的方法,是能被機械地執行的動作或指令的無窮集合。( )2.算法中執行的任何計算步驟都能被分解為基本的可執行的操作步驟。( )3. 用自然語言描述算法,就是人們日常所用的語言,如漢語等來描述算法。( )4. 流程圖中,平行四邊形表示判斷( )5.循環結構表示程序反復某個或某些操作,只有用戶干預才能終止循環。( )對錯錯對錯總結什么是算法算法的特征算法的描述基本控制結構算法及其描述算法是指在有限步驟內求解某一問題所使用的一組定義明確的規則。有窮性、確定性、數據輸入、數據輸出、可行性自然語言描述、流程圖描述、偽代碼描述順序結構、選擇結構、循環結構思考怎么用流程圖表示出韓信點兵的過程,計算出總人數呢?韓信點兵開始x=1x被3、5、7整除余數為1x=x=1輸出x值結束YNimport randomimport timeimport osprint("你好,現在你有10秒鐘的時間記憶下列物品及其編號")things=["書包","蘋果","課本","橙子","梨子","獼猴桃","柚子","手機","鐵觀音","彩蛋"]for i in range(10):print(i,":",things[i])#在屏幕上顯示編號及物品time.sleep(10) #延時10秒os.system("cls") #清屏幕,隱去編號及物品n=0 #記錄答對的題數,初值為0t2=random.sample(things,5)#隨機抽出5個物品for i in t2: #出5題ans=int(input(i + "的編號是:"))#輸入編號答題if i==things[ans]:n=n+1 #如果回答正確,答對的題數加1print("\n你一共答對了",n,"次")#屏幕顯示答對的題數input("\n按回車鍵結束程序") 展開更多...... 收起↑ 資源列表 3.2 算法及其描述教學課件-粵教版高中信息技術(2019)必修1 數據與計算.pptx 比賽--習題.mp4 算法 .mp4 縮略圖、資源來源于二一教育資源庫