第十四次:模組化程式設計與問題解決實作(4)


模組化的核心思想-分而治之(Divide and Conquer.各個擊破)演算法

將一個大問題拆解成若干個小問題之後,透過逐一解決這些小問題,來解決整個大問題。

分而治之演算法與問題解決

問題1:排序

問題2:假設你是農場主人.有一小塊土地.你要將這塊土地均分為正方形.且分出的正方形要盡可能大.你如何解決這個問題?

動畫圖解

資料來源:Animations from Grokking Algorithms

原始影片https://goo.gl/NM3eku


實作1-模組化程式設計(分而治之)-花朵

執行結果

一.問題分析及演算法:

1.花是由幾部分構成?

2.建立(定義)?個函式

二.程式設計實作:

1.撰寫各個函式

(1)單片葉子

2.測試及除錯各個函式

3.撰寫主程式

a.位置初始化

b.畫筆初始化

c.呼叫?函示

檔案存為108****-11scratch專案.sb3


模組化程式設計總結

1.何謂模組化程式設計

把程式拆解成一個一個模組,就是模組化程式設計

2.模組化是函式延伸觀念.一個模組可以包含很多函式

(1)函式-工具

(2)模組化-工具箱(含很多工具)


3.模組化程式設計優點

資料來源:

http://info23thing.blogspot.tw/2016/05/scratch.html


作業上傳

運算思維時間

貪吃蛇遊戲

遊戲規則說明:

這是一個簡單的蛇遊戲。選擇一種速度,然後使用箭頭鍵嘗試吃蘋果(紅色方塊),但要當心牆壁和自己。您隨時可以通過按空格鍵暫停遊戲

迷宮遊戲

蛋蛋IO