資源簡介 (共17張PPT)想一想童童從學校到家有幾條路線可走?算法的多樣性浙江教育出版社 信息科技六上 第8課什么是多樣性 現實中,解決一個問題的算法往往具有多樣性,即可用不同的算法來解決同一個問題。猜數字游戲中,同學A輸入數字的過程其實是一個“查找”問題,即在1~100范圍內查找目標數da,可采用多種不同的策略來解決。問題分析計算機中的“查找”是指根據所給條件找出滿足條件的對象,即在存儲的一批數據中找出一個特定的數據,或者確定在這批數據內是否存在這樣的數據。策略1:按順序依次查找依次將1,2,3,…,99,100(或100,99,98,…,2,1)與da比較,直到找到為止。問題分析學生活動按照順序查找策略,在1~100范圍內查找數37,一共需要比較多少次?策略2:取中間數查找1~100范圍內的數是依次增加的,依據該有序性可依次取中間數來查找。先取1~100的中間數50與da比較,若da等于50,則查找成功;若da小于50,則取1~49的中間數25與da比較;若da大于50,則取51~100的中間數75與da比較……·如此反復,直到找到為止。問題分析學生活動按照取中間數查找策略,在1~100范圍內查找數37,一共需要比較多少次?認識經典算法解決問題的多種算法設計根據解決問題采用的策略,將其設計成算法。策略2:取中間數查找策略1:按順序依次查找二分查找順序查找假設目標數為37,并用變量da表示,取到的數用變量cai表示。對應的算法流程圖算法1:順序查找算法設計假設目標數為37,并用變量da表示,計算得到的中間值用變量cai表示。用變量cz和zz表示可取數的范圍,初始查找范圍為1~100,則cz的初值為1,zz的終值為100。對應的算法流程圖算法2:二分查找算法設計解決問題的多種算法驗證上述兩種算法可以通過編寫程序或流程圖的執行進行驗證。算法1的程序驗證運行程序,驗證算法。若變量da的值變為137,則程序運行結果是什么?若要顯示對應提示,則應如何修改程序?學生活動break語句的作用是終止所在的循環。算法1的程序驗證若變量cai的取值依次為100,99,…,2,1,則相應的算法和程序如何修改?學生活動算法1的程序驗證另一種循環語句算法2的流程圖驗證根據上述算法2的流程圖,通過表格的形式列出變量cz、zz和cai的值來驗證算法。學生活動算法2的流程圖驗證若變量da的值變為137,請用表格的形式列出變量cz、zz和cai的值。學生活動循環輪次 cai cz zz123練習照樣子寫寫代碼,想一想兩個程序有什么不同?你學到了什么?謝謝觀看!浙江教育出版社 信息科技六上 第7課 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫