資源簡介 (共18張PPT)義務教育信息科技(2024)五年級 第1課時第六單元 快速遍歷數據五年級下冊第23課 兔子增長有規律(2)12進一步了解兔子增長的數據遞增規律,能夠用流程圖描述相應的算法。能夠利用程序驗證兔子增長問題的算法,體會算法與程序的對應關系。學習目標第23課 課堂導入 這一課繼續探究“兔子增長問題”,通過用流程圖描述算法,并用程序進行驗證,感受用算法解決問題的基本過程。 一起來繼續探索吧!知識激趣學習活動一 用流程圖描述兔子增長算法二 用程序驗證兔子增長算法第23課 學習活動一、用流程圖描述兔子增長算法第23課 學習活動問題回顧1月,農場里有一對小兔;2月,這對小兔長成一對大兔;3月,這對大兔生了一對小兔,這時農場里有2對兔;4月,大兔又生了一對小兔,上個月的小兔長成了大兔,這時農場里有3對兔;5月,兩對大兔各生了一對小兔,上個月的小兔長成了大兔,這時農場里有5對兔;以此類推……直到12月。到12月的時候,假設兔都活著,那么農場里有多少對兔?算法回顧第23課 學習活動一、用流程圖描述兔子增長算法1. F[1]和F[2]的初始值都設為1,表示1 月和2月兔的數量。2. 用循環變量n表示月份,初始值設為3,表示從3月開始計算。3. 建立以下循環結構:(1)如果n <=12,就進入循環;F[n] = F[n-1] + F[n-2]即F[3] = F[2]+F[1],F[4] = F[3]+F[2],F[5] =F[4]+F[3]……(2)將n加1,繼續循環。4. 當n >12時,結束循環。5. 輸出F[12] 的值。用流程圖描述第23課 學習活動一、用流程圖描述兔子增長算法打開參考程序,觀察、運行,分析程序與算法的對應關系。運行程序第23課 學習活動二、用程序驗證兔子增長算法F = [0,1,1]n=3while n <= 12:F = F+[0]F[n] = F[n-1]+F[n-2]n = n+1print("第12個月的兔子數量是:",F[12])#把1月、2月兔的數量放入列表,第0項設為0#設置要計算的起始月份#如果月份數n小于等于12,就進入循環#為列表增加一項,默認值為0#計算當前月份兔的數量#月份數增加1,繼續計算#輸出計算結果因為 Python 的列表從第 0 項開始,因此這里先把第 0 項設為 0,第 1 個月、第 2 個月兔的數量分別設為 1,并從第 3 個月開始計算,直到第 12 個月。應關系。第23課 學習活動二、用程序驗證兔子增長算法“F = F + [0]”表示為名為 F 的列表增加一項,默認值為 0,用于存儲將要計算月份兔的數量。第23課 學習活動二、用程序驗證兔子增長算法以上求解的兔子農場問題就是經典的斐波那契數列問題。意大利數學家萊昂納多·斐波那契(Leonardo Fibonacci)在1202年所著的《計算之書》中,提出了有趣的兔子問題。書中是這樣描述這個問題的:一般而言,兔子在出生兩個月之后,就會有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有的兔子都活著,那么一年以后可以繁殖多少對兔子?二、用程序驗證兔子增長算法第23課 學習活動了解斐波那契數列 斐波那契數列指的是這樣一組數: 1、1、2、3、5、8、13、21、34、55、89…… 這組數從第3個數開始,每一個數都等于前兩個數之和。這組數因以兔子繁殖為例子而引入,故被稱為兔子數列。了解斐波那契數列第23課 學習活動二、用程序驗證兔子增長算法 1.依據用自然語言描述的算法畫出相應的流程圖,可以更加直觀地理解算法。2.依據算法編寫程序進行驗證時,可以采用不同的程序語言、不同的實現方法。3.日常生活與學習中,只要用心觀察,會發現有許多利用遞推思維來思考并解決問題的例子。第23課 課堂總結 1.配套資源中有上一課“兔子跳臺階問題”的參考程序。 打開這個程序并運行,輸入不同的臺階總數,觀察輸出結果,體會數據的變化規律。第23課 拓展與提升 2. 閱讀下面的內容,了解自然界中一些符合斐波那契數列的獨特現象。第23課 拓展與提升 斐波那契數列存在于許多自然現象之中。 例如,有些樹木的生長,由于新生的枝條往往需要一段休息時間,供自身生長,而后才能萌發新枝。所以一株樹苗會在間隔一段時間后長出一條新枝。第二年新枝休息,老枝依舊萌發。此后,老枝與休息過一段時間的新枝同時萌發,當年生的新枝則次年休息。這樣,一株樹木各個年份的枝干數,就會構成斐波那契數列。 又如,一些植物的種子排列也符合斐波那契螺旋,向日葵的種子排列形成的斐波那契螺旋有時能達到 89個。這些植物按照自然規律進化成這樣,這似乎是植物排列種子的優化方式。它能使所有種子具有差不多的大小卻又疏密得當,不至于在中心處擠了太多的種子。 符合斐波那契數列的植物種子、葉片以及螺旋。第23課 拓展與提升下課啦! 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫