Scratch3.0編程小課堂42(神奇的斐波那契曲線)

2021-01-22 大河熱點

今天我們用scratch來畫出神奇的斐波那契曲線。

神奇的斐波那契曲線
神奇的斐波那契曲線
神奇的斐波那契曲線

神奇的斐波那契曲線在我們的生活中隨處可見,海螺,樓梯,圖案……

斐波那契曲線

知識普及1:斐波那契數列

義大利數學家列昂納多·斐波那契(Leonardo Fibonacci)在研究兔子繁殖的時候發現:如果一開始有一對兔子,它們每月生育一對兔子,小兔在出生後一個月又開始生育且繁殖情況與最初的那對兔子一樣,那麼每月兔子的總數可以用以下數列表示:1,1,2,3,5,8,13,21,34,55,89,144,233…這一數列看起來相當簡單,但卻隱藏著一些有趣的東西,如果從第0項開始,它的值是0 ,第1項是1,……那麼數列中後面的每一項都等於前兩項之和,稱為斐波那契數列(Fibonacci sequence)。

一、準備工作

1、背景:選擇背景庫中的「戶外」類;

背景庫

2、角色:選擇角色庫中的「所有」類中的畫筆;

角色庫「」「」「」「」

3、變量:新建四個變量,分別命名為「f1」、「f2」、「f3」、「n」、「x」;

變量f1
變量f2
變量f3
變量n
變量x

二、編輯腳本

1、自製新的積木模塊:

單擊代碼區的「自製積木」,製作新積木模塊,新積木中的參數默認是文本項,單擊後修改文體內容為「項斐波那契數列」,在文本項參數前面再添加一個輸入項參數,用來接收輸入的數字,表示第n項斐波那契數;

自製積木參數

2、編輯自製積木腳本:自製積木模塊實現的功能是生成斐波那契數;

通過分析斐波那契數列的定義,我們可以迭代法來完成腳本;

知識普及2:迭代法

——也稱輾轉法,是一種不斷用變量的舊值遞推新值的過程;迭代算法是用計算機解決問題的一種基本方法。它利用計算機運算速度快、適合做重複性操作的特點,讓計算機對一組指令(或一定步驟)進行重複執行,在每次執行這組指令(或這些步驟)時,都從變量的原值推出它的一個新值;

(1)初始化:給四個變量「f1」「f2」「f3」「n」設置初始值。給f1賦值為1,再將f1的值賦予第f2、f3。變量n控制循環次數。

初始化

(2)循環與迭代:通過三個變量的迭代,用一個循環,計算出變量f3的值,即第n項斐波那契數值;

循環
迭代

3、主程序腳本:

(1)畫筆初始化:設置畫筆的位置,粗細,顏色,初始狀態為清除;

初始化

(2)繪製斐波那契曲線:循環30次,選取30項斐波那契數;

30項斐波那契數

因為斐波那契數值在變化,所以當移動步數為斐波那契數值,旋轉角度為90度除以斐波那契數值時,就形成了神奇變化的斐波那契曲線;

繪製曲線

三、完整腳本

腳本

想一想,改變腳本中的旋轉角度與循環次數後,斐波那契曲線會有什麼變化呢?

相關焦點

  • 生命曲線與神聖的斐波那契數列
    同樣讓他感到驚訝的是,最讓世人津津樂道是以他命名的這個斐波那契數列:0,1,1,2,3,5,8,13……,而並非本人更偉大的數學成就——將阿拉伯數字和乘數的位值表示法系統引入了歐洲。在該書的第一部分第一章開始部分寫道:"這是印度人的九個數字:9 8 7 6 5 4 3 2 1。用這9個數字,再加上符號0(在阿拉伯語中稱為zephiroum),我們就能將任何數字都可以像下面那樣書寫出來"。當時的義大利是由獨立的小城邦和地區組成的,這導致了人們使用多個度量和貨幣系統。
  • scratch少兒編程線上活動來啦!
    scratch少兒編程線上活動來啦!
  • 小孩子都開始學編程?有漁編程帶Scratch走入小學社團課
    3月28日,為了給小朋友普及網際網路知識,擴展視野,浙江紹興靈芝小學請來了杭州有漁編程負責少兒編程教育的黃老師,走進社團課當中。既然是少兒編程的普及,scratch是最佳的選擇。Scratch為何適合做少兒編程工具?
  • scratch3.0圖形化編程軟體解決「進位轉換(二進位)」問題
    網友互動留言收到網友的評論,我前幾天發的「十進位轉二進位」的文章,網友表示沒有程小奔機器人,是否可以做一個scratch版本的,放心!這就安排!二進位的故事我們這裡就不科普了哈!想要回顧的請移步「百度百科」,嘻嘻首先 我們來看一下1~16 的一個二進位與十進位的對照表格:以上表格就是0-16的表達對照這種方法就是我之前文章的「思路1」,感興趣的網友們可以去看一下我之前的文章連結→scratch+程小奔機器人實現「進位轉換」(十進位轉二進位)這次我們主要說一下「短除法」思路解決十進位轉換為二進位
  • 斐波那契數列有多神奇?
    在所有的數列中,斐波那契數列無疑是最著名的一個:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377,……由來兔子繁殖問題實際上是 斐波那契 提出的一個數學模型:假定一對大兔子一年生一對小兔一對小兔子一年後長大成為一對大兔子且所有的兔子都長生不死那麼這些兔子是按照什麼樣的規律繁殖的呢?
  • Scratch3.0編程小課堂35(數學題:判斷閏年)
    今天我們用Scratch來做一個判斷閏年的小程序。所以,如果每年定義為365天的話,1年就會多出0.2423天,4年就會多出0.9692天,非常接近1天,這樣閏年就出現了,也就是每4年要有1年設置為366天,來抵消這多出的1天。補上時間差的年份為閏年。閏年共有366天(1-12月分別為31天,29天,31天,30天,31天,30天,31天,31天,30天,31天,30天,31天)。
  • 王源帶你破解小米9 SE斐波那契螺旋線中兔子交配的秘密!
    這個公式的大白話是,斐波那契數列第一位數是1,第二位數是1,第n位數是第(n-1)位數加上第(n-2)位數,這個n必須大於等於3,n可以無窮大。神奇的斐波那契數列斐波那契數列並不是一個單純的、有規律的數列。
  • 宇宙的答案42,告訴你「42」這個數字有多神奇
    在13進位的表達中,我們需要十三個符號計數:0 1 2 3 4 5 6 7 8 9 A B C。在這個進位下,6乘以9等於42。可能你會覺得這個結果很荒謬,因為我們都知道6×9 = 54。但這是在10進位的計算中。如果在以13為底的情況下,表示為42的數應該是(4 x 13) + 2 = 54。
  • Fibonacci 斐波那契數列的幾種寫法、時間複雜度對比
    我看在家修煉編程技術是不錯的選擇,「用Python實現斐波那契數列」是我們在知識星球中每周給大家安排的一道題,你也可以先思考一下有哪些實現方法,說不定哪天面試就能派上用場,終有一日當上CTO贏取白富美從此走上人生巔峰。
  • 股市中神奇的斐波那契數
    斐波那契數列,又稱黃金分割數列。指的是這樣一個數列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........這個數列從第3項開始,每一項都等於前兩項之和。
  • 斐波那契數列為什麼那麼重要,所有關於數學的書幾乎都會提到?
    斐波那契數列是編程書中講遞歸必提的,因為它是按照遞歸定義的。所以我們就從遞歸開始講起。1.遞歸求解int Fib(int n){return n < 2 ? 1 : (Fib(n-1) + Fib(n-2));}這是編程最方便的解法,當然,也是效率最低的解法,原因是會出現大量的重複計算。
  • 告訴你「42」這個數字有多神奇
    在13進位的表達中,我們需要十三個符號計數:0 1 2 3 4 5 6 7 8 9 A B C。在這個進位下,6乘以9等於42。可能你會覺得這個結果很荒謬,因為我們都知道6×9 = 54。但這是在10進位的計算中。如果在以13為底的情況下,表示為42的數應該是(4 x 13) + 2 = 54。有趣的稀有整數列數字42有一系列有趣的數學特性。
  • 斐波那契數列——隱藏在自然界的數學美
    2對兔子第四個月:成年兔子又生了1對兔子加上自己及上月生的小兔子,共有3對兔子第五個月:成年兔子又生了1對兔子第三月生的小兔子已經長成年且生了1對小兔子加上本身兩隻兔子及上月生的兔子1、1、2、3、5、8、13、21......的正方形每一個新的正方形都有一個邊其長度與最近兩個正方形的邊之和一樣長這組矩形的邊長是兩個相鄰的斐波那契數稱為斐波那契矩形,也叫黃金矩形(記住這個黃金矩形,等下還會再次出現)然後,以各正方形的一個頂點為圓心畫出四分之一的曲線,再連接所有曲線
  • 我居然從一隻貓身上學到了斐波那契數列
    1,1,2,3,5,8,13,21,34,55,89,...而且當n無窮大時, F n-1 / F n 越來越逼近黃金分割數0.618。正因為它的種種神奇性質,美國數學會甚至從1960年代起出版了《斐波納契數列》季刊。關於斐波那契數列,有一個恆等式是這樣的。
  • 從實戰出發,給你講清楚「斐波那契數列」!到底有沒有神奇規律?
    看到這個話題,讓我想起了大學時候瘋狂追逐技術的經歷,在追逐技術的期間,接觸到了黃金分割已經其他一些神奇數字。當我把這些神奇的數字拿到盤面上驗證的時候,居然真的很準,甚至可以讓我拿一天或者一周的行情,只需要設置20點以內的止損就可以拿到利潤。行情的轉折點離這些神奇數字非常接近。
  • 【投資心得】神奇的斐波那契均線(1)
    來源: 贏家論市 舉報   今天給大家帶來的是一種很有用的均線設置方法:斐波那契均線
  • Python 揭秘斐波那契定律,如何幫助碼農分析股票?|技術頭條
    作者 | 元宵大師責編 | 胡巍巍剖析斐波那契數列對於斐波那契數列相信大家並不陌生,它指的是這樣一個數列:0、1、1、2、3、5、8、13、21、34、55、89、144、233…………這個數列究竟蘊含著什麼秘密呢?我們從以下三個問題展開對斐波那契數列的剖析:(1) 斐波那契數列是怎麼由來的?
  • Scratch3.0編程小課堂17(趣味小遊戲:小企鵝迷宮尋寶)
    出發寶物3、聲音:選擇聲音庫中的「動物」類;寶物2、小企鵝:(1)方向:注意方向和角度的關係:上——0度,下——180度,左——-90度,右——90度;
  • 《scratch編程+數學》課程之用sin和cos的數學原理畫一個彩虹圈!
    在這節課中,我們要利用數學中的sin和cos兩個計算方法,在scratch編程中,畫一個彩虹圈,先讓我們來看一下視頻效果!整個小程序只需要一個角色,就是畫筆。在這個編程過程中,我們要設置兩個變量,分別是半徑和角度。
  • 斐波那契數列如何幫助我們快速換算英裡公裡?
    》,這次我們來看看這個神奇的數列如何幫助我們完成英裡和公裡的換算。英裡和公裡我們知道英裡和公裡的換算關係如下:1英裡 = 1.609344公裡1公裡 = 0.621371英裡倘若同學們還記得黃金分割比的話