冬營營招生中

2019年7月21日 星期日

[micro:bit 社團教材] 計算費氏數列




簡單來說,費氏數列(Successione di Fibonacci)是一個以下列方式延伸的數列:

第0項 = 0
第1項 = 1
第2項 = 第0項 + 第1項 = 1
第3項 = 第1項 + 第2項 = 2
第4項 = 第2項 + 第3項 = 3
第5項 = 第3項 + 第4項 = 5
第6項 = 第4項 + 第5項 = 8
第7項 = 第5項 + 第6項 = 11
......


而這個數列又稱為「黃金分割數列」,因為如果以數列每一項的值當邊長畫成正方形,就能拼湊出如下的圖案:







我們可以利用程式來幫我們計算費式數列的每一項:


  1. 首先,一開始指定變數「數字1」為0,「數字2」為1。(費式數列的頭兩項)
  2. 用變數「暫存」儲存「數字1」+「數字2」,也就是下一項的值。
  3. 接著我們要更新數字1與2,數字1的值會被數字2取代,接著數字2的值則被「暫存」取代。
  4. 重複以上流程。











如果你只希望程式替你算出某一項的值,而不是逐一列舉,可以把程式改成如下:






這會算出並顯示第21項(畢竟前面有第0和第1項)的值,也就是10946。



沒有留言:

張貼留言