999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用遞歸畫出美麗的勾股樹

2020-06-24 12:52:16Intoweb
電腦報 2020年23期

Intoweb

我們上期已經知道了勾股數——符合勾股定理(a2+b2=c2)的一組數字,將它圖形化表達如圖1所示。

以勾股定理圖為基礎,以兩個較小的正方形(a和b)為基礎,繼續按勾股定理生長,又能畫出下一代的勾股定理圖,如此循環畫下去,最終得到一棵完全由勾股定理圖組成的樹狀圖形,稱之為“勾股樹”,再恰當不過(如圖2)。

由于圖中的一個部分和它的整體或者其他部分都十分相似,因而被稱為分形圖,分形圖內任何一個相對獨立的部分,在一定程度上都是整體的再現和縮影。這就是分形圖的自相似的特性。所以我們以前繪制過的謝爾賓斯基三角形也是一種分形圖(如圖3)。

用Scratch畫勾股樹

我們用Scratch來畫勾股樹。

1. 定義自制積木“勾股樹(邊長)”(圖4)。

2. 以正方形的左下角為起點開始畫出一個大正方形c,并多畫一條邊,循環次數從普通方形的4次變為5次,在方形的左上角終止,作為下一個正方形b的起點。

3. 左轉120°,并用勾股樹積木畫出正方形b,此處使用了遞歸——循環中引用了自身。根據勾股定理計算,b的邊長以大正方形邊長c作為三角形的斜邊(b=c×cos30°)(如圖5)。

4. 移動到正方形b的右下角,右轉90°。以此為起點用勾股樹積木繪制正方形a,根據勾股定理計算,a的邊長以大正方形邊長c作為三角形的斜邊,(a=c×cos60°)(如圖6)。

5. 移動到正方形b的左上角,以正方形b為大正方形開始繪制出下一代3個正方形。

6. 由于用到了遞歸,為了程序的正常運行,必須給循環一個出口。以最小正方形的邊長作為判斷條件,當邊長小于5時跳出循環。用“如果…那么”積木和“停止這個腳本”組合完成條件判斷和終止循環。

7. 自定義積木程序(如圖7)。

8. 引用自定義積木,設定開始位置和第一個正方形邊長(如圖8)。

9. 程序運行結果如圖9,點擊“編輯—打開加速模式”,可以快速畫完圖形(如圖9)。

10. 圖9繪制的圖形是30度60度角的直角三角形。想要繪制等腰直角三角形的勾股樹只要改變小正方形邊長為(b=c×cos45°),旋轉角度變為135°和45°(如圖10)。你也可以通過改變勾股定理圖中直角三角形兩個銳角大小構建不同形狀的勾股樹(詳細代碼可掃碼下載)。

用Python畫勾股樹

Scratch的畫筆沒有填色功能,所以看起來比較簡陋,使用Python的turtle小海龜庫繪制圖形可以填色,繪制出來的勾股樹更好看(如圖2)。但是繪制速度遠不及使用加速模式的Scratch。

1. 本例用到了turtle的繪圖和填色功能;math的cos函數和 radians函數(角度轉弧度);用random產生隨機數,用于方塊的隨機顏色。

2. 具體算法原理與Scratch方法一致。

3. 定義繪制勾股樹的函數“draw(a):”。

4. 定義出口條件“if a > 5:”。

5. 設置隨機的rgb顏色。

6. 繪圖使用填充狀態“begin_fill()”。

7. 和剛才繪制正方形一樣需要循環5次“for i in range(5):”。

8. 由于Python的math庫的cos(X)函數是以弧度制求X的余弦。我們在Scratch中的(a×cos30°)需要用radians將30度轉化為30弧度代入計算才能獲得正確結果。

所以繪制方形語句為“draw(a * cos(radians(30)))”。

9. 小烏龜的具體繪制路徑和Scratch相同。

10. mode(‘logo),表示初始方向是向上(北)。將logo改為standard則是向右(東)。

11. speed(0),設定移動速度,0-10。0已經是最快了,但是還是挺慢的。

12. done(),寫在程序最后一行,避免畫完圖形就自動關閉(如圖11)。

主站蜘蛛池模板: 日韩区欧美区| 国产精品一线天| 久久精品这里只有精99品| 久久综合亚洲色一区二区三区| 97在线观看视频免费| 97精品久久久大香线焦| 色悠久久久| 91av成人日本不卡三区| 国产精品思思热在线| 国产精品久久久久鬼色| 精品久久久久无码| 58av国产精品| 亚洲成人黄色在线| 黄色片中文字幕| 99re经典视频在线| 99re在线视频观看| 黄色网站不卡无码| 亚洲视频免费播放| 久久久精品国产SM调教网站| 中文国产成人精品久久| 亚洲中文字幕无码mv| 超碰免费91| 色综合色国产热无码一| 国产香蕉在线| 日本成人福利视频| 亚洲日韩AV无码一区二区三区人| 亚洲精品在线影院| 成人在线观看一区| 秋霞一区二区三区| 欧美成人二区| 国产视频你懂得| 91无码网站| 久久人体视频| 日韩在线永久免费播放| 在线观看国产精品一区| 精品一区二区三区水蜜桃| 欧美在线网| 欧美伊人色综合久久天天| 欧洲熟妇精品视频| 国产成人综合日韩精品无码首页| 久久久久人妻一区精品色奶水| 91精品国产一区| 国产精品专区第1页| 免费一级无码在线网站| 亚洲无码37.| 最新国产高清在线| 噜噜噜综合亚洲| 国产在线啪| 亚洲国产精品VA在线看黑人| 日韩高清成人| 国产美女丝袜高潮| 99re经典视频在线| 乱人伦视频中文字幕在线| a在线观看免费| 精品无码日韩国产不卡av| 一区二区无码在线视频| 精品国产美女福到在线直播| 国产精品任我爽爆在线播放6080 | 国产视频自拍一区| 国产主播在线观看| m男亚洲一区中文字幕| 全部毛片免费看| 久久精品电影| 国产成人91精品| 国产欧美日韩精品综合在线| 国产伦精品一区二区三区视频优播| 欧美中文字幕在线播放| 亚洲Va中文字幕久久一区 | 亚洲男人的天堂久久香蕉| 国模极品一区二区三区| 国产成人综合日韩精品无码不卡| 中文字幕亚洲精品2页| 8090成人午夜精品| 免费人成黄页在线观看国产| 日本a级免费| 色丁丁毛片在线观看| 欧美国产在线一区| 九九久久精品国产av片囯产区| 中文字幕自拍偷拍| 伊人91视频| 天堂成人在线| 人人妻人人澡人人爽欧美一区 |