108 學年度 臺南市市立進學國小資訊組

Code.org (所有標籤)

2018-05-28 Scratch 函式與遞迴 (自訂新積木)

資訊教育

Scratch 函式與遞迴 (自訂新積木)

使用繪圖方式介紹「函式」與「遞迴」,可以視覺化的方式觀察特徵,感受規律性。此處則以「落地反彈」的現象介紹函式與遞迴,嘗試理解函式積木的特色與優點,並且呈現遞迴的「重複效果」(Tail Recursion尾遞迴)。函式為 Scratch 的進階功能,常見於多數的程式語言。函式的使用讓我們以更直覺的方式描述問題,解決問題,我們解決問題不再是逐一列舉,而是以規則和規律性來處理問題,而遞迴的使用則提供另一種更為簡潔的規則來處理問題。

  1. 函式積木
  2. 為何使用函式積木
  3. 函式積木的優點
  4. 函式積木與參數
  5. 參數
  6. 新增函式積木
  7. 程式片段
  8. 問題應用
  9. 問題描述
  10. 方法1:循序
  11. 方法2:重複
  12. 方法3:函式與遞迴
  13. 方法比較

電子書,Scratch 函式與遞迴:

http://odata.tn.edu.tw/ebooktagapi/Intro/Index2?id=b83ccee183d642b7852ec1cad60ae82c

Scratch 範例,三種方式彈跳 (循序、重複、遞迴):

https://scratch.mit.edu/projects/225806763/

參考文件:

2017-06-29 Scratch 遊戲設計─高效版刮刮樂 (Scratch Card)

資訊教育

Scratch 遊戲設計─高效版刮刮樂 (Scratch Card)

按住滑鼠左鍵刮開!

  • 運用分身當作遮罩(Mask),透過隨機亂數產生不同造型的遮罩
  • 使用「幻影」調整透明度,模擬刮開的效果
  • 運用隱藏及廣播驅動等技巧,增進執行效能

JavaScript 版本 (適合手機與行動裝置)

https://phosphorus.github.io/app.html?id=167670723&turbo=false&full-screen=true

https://scratch.mit.edu/projects/167670723/

2017-06-24 Scratch 遊戲設計─顏色辨識大考驗

資訊教育

Scratch 遊戲設計─顏色辨識大考驗

這是一個顏色辨識的遊戲,原始構想來自以下社群媒體網站。
http://tw.vonvon.me/quiz/1298?utm_viral=88

這只是一個簡單的遊戲雛形,遊戲玩法為選出與其他顏色不同的物件。

可調整以下參數,改變難易程度。

  1. 顏色的變異範圍
  2. 顏色的亮度變異範圍
  3. 與其他多數物件不同顏色的差異程度

遊戲設計使用以下技巧與功能:

  1. 建立大量色塊
    運用「分身」建立大量相同物件,透過計算排列成二維矩陣。
  2. 運用外觀「顏色」與「亮度」,產生顏色差異,調整遊戲難易度。
  3. 運用「物件區域變數」,記錄物件編號,判斷答案是否正確。

https://scratch.mit.edu/projects/167168175/

 

2017-06-24 Scratch 視覺短期記憶遊戲設計─小猴吃香蕉

資訊教育

Scratch 視覺短期記憶遊戲設計─小猴吃香蕉

這是一個視覺短期記憶的遊戲,原始構想來自以下網站。
http://www.abcya.com/baby_chick_maze.htm

電子書

http://odata.tn.edu.tw/ebooktagapi/Intro/Index2?id=de309644afce45d38bca047b96c08fed

這只是一個簡單的遊戲雛形,遊戲玩法如下:

  1. 遊戲開始,障礙物會閃示然後隱藏。
  2. 點選香蕉,避開隱藏的障礙物,直到小猴拿到香蕉。

遊戲設計使用以下技巧與功能:

  1. 閃示障礙物
    運用外觀中的「亮度」效果,讓障礙物逐漸的消失,但不是真的隱藏起來。
  2. 放置障礙物
    障礙物的放置,運用「分身」產生大量障礙物;運用「隨機」分散放置障礙物。
  3. 使用全域變數控制程式狀態,協調物件運作。

https://scratch.mit.edu/projects/167143127/

2017-06-18 Scratch 中邏輯判斷 (AND、OR、NOT) 的替代寫法

資訊教育

Scratch 中邏輯判斷 (AND、OR、NOT) 的替代寫法

條件判斷中需要正確的陳述條件,將所需的範圍表示出來,或排除在外。

在未俱備邏輯運算的概念前,可以透過條件式本身的結構和順序來達成同樣的效果。

下列三個範例,分別提供對應的替代語法。左式為進階的邏輯運算,右式為簡單的條件判斷。在教學上可以相輔相成,便於說明概念。

有時,也可以解釋 Short-circuit evaluation (短路求值)。

  • 和 (AND)
  • 或 (OR)
  • 不成立 (NOT)

2017-06-18 Scratch 終極密碼猜數字完整教案

資訊教育

Scratch 終極密碼猜數字完整教案

整裡出本學期當中的一個主題式遊戲教學,幾乎涵蓋了大部份的基礎概念。

教學過程中學生的問題與想法,也忠實的紀錄下來,藉以提供教學者省思,做為概念澄清的參考。

https://class.tn.edu.tw/uploads/tad_web/1384/news/file/guess_number.pdf

2017-05-31 Scratch 接蘋果遊戲分析 (善用新積木方式)

資訊教育

一個系統 (Scratch 遊戲) 的設計與發展過程中,起初不見得會知道整個程式最後的全貌。而課本範例雖然是很好的學習材料,但一開始即完整定義系統功能,以及描述細節設計,此種策略 (Top-Down) 有時非出於自然,而是需要有經驗的設計者。

有些遊戲的初步概念,可能只是簡單的互動功能,而後才加入「計分」、「計時」與「難易度調整」等額外功能。對於初學者,或許可以先從局部功能實作出來 (Bottom-Up),再逐步加入其他功能,經過反覆的步驟而發展出一個完整的遊戲。

以下附件,嘗試以「新積木」方式,來包覆細節設計,讓系統可以著重在主要功能面,方便解釋與說明。

2017-05-27 mBot 光源跟隨 (Light Following)

資訊科學

mBot 光源跟隨 (Light Following)

今天突發奇想 mBot 是否可以在黑暗中找到光源,邁向光明。分享此一實作結果,驗證想法。

改裝 mBot 光線感應器,侷限於接受特定方位的光源,使其成為指向性。偵測左右兩側光線差異,判定方向,逐步找尋光源。

  1. 改裝光線感應器
  2. 原理與演算法
  3. 實際影片

    mBot 光源跟隨 (Light Following)

  4. 完整程式

2017-05-27 mBot機器車親子協作課程進度紀錄

資訊教育

臺南市中西區進學國小全民學區數位學習
mBot機器車親子協作課程進度紀錄
2017.05.06(六) ~ 2017.05.27(六)

補充:0~9數字分三群練習

2017-05-22 進學國小參加2017全國紫錐花盃反毒機器人競賽

資訊教育

進學國小參加2017全國紫錐花盃反毒機器人競賽

2017.05.20南榮科技大學
邁向巔峰國小組,編號A3

進學國小參加2017全國紫錐花盃反毒機器人競賽

2017-05-11 Scratch 分身應用與隨機粒子模擬

資訊科學

Scratch 分身應用與隨機粒子模擬

眾矢之的 (Magic Particles)

設定個別粒子(分身)的運動模式(微觀),觀察整體的運動模式(鉅觀)。

https://youtu.be/5iA-WJZYxrY

https://scratch.mit.edu/projects/160378209/

2017-05-09 Scratch 中使用堆疊實作函數回傳值模擬遞迴 (費氏數列)

資訊科學

Scratch 中使用堆疊實作函數回傳值模擬遞迴 (費氏數列)

Fibonacci Number 範例,使用堆疊 (Stack) 實作函數回傳值。

To Iterate is Human, To Recurse, Divine

請使用 Turbo Mode。按 Shift 加綠色旗子。

https://scratch.mit.edu/projects/159864657/

2017-05-08 Scratch 基礎概念,如果..否則..我的條件判斷正確嗎?

資訊教育

Scratch 基礎概念,如果..否則..我的判斷正確嗎?

Scratch 中使用「如果..就」可以做簡單的條件判斷,遇到更複雜的條件判斷時請使用「如果..否則」。

電子書

http://odata.tn.edu.tw/ebooktagapi/Intro/Index2?id=cd06efa12fd843b3b1912f554218dbe7

以下左右兩側的條件判斷程式,有什麼差別?左側的程式有問題嗎?

       

2017-04-22 Scratch 中三種常見的重複執行 (Repeated Execution)─迴圈 (Loop)

資訊教育

Scratch 中重複執行的流程結構─迴圈(Loop)有以下三種類型:

  1. 無限迴圈 (Repeated Execuction)─重複執行
    這是 Scratch 中最常見,也是課程中最基礎的重複方式。當我們「未設想」何時要結束程式,多會使用「無限迴圈」,多數個體(如電腦、機器)在處理外界訊息,也是一直不斷的重複接收輸入和反應,而這個無限的大迴圈也就是 Message Loop。如 mBot (Arduino) 中的 loop()。

    上面的程式會重複執行「拍手」,因為沒有任何限制,所以只要有足夠的資源(時間和空間,電力),就可以無限制的重複執行程式。無限迴圈因為不會結束執行,只能重複其內的指令「拍手」,所以 Scratch 的設計是後面無法銜接任何的積木方塊。比較下面的左右兩段程式,左邊的程式無法銜接「歡呼」指令。

    無限迴圈在此有些不便,如未能充份瞭解也容易寫出有 bug 的程式,而不易發覺。以下範例,原先是要拍手10次,但僅拍手1次,為什麼呢?猜猜看。
  2. 有限迴圈 (Bounded Repeated Execution)
    有限次數的重複執行是多數程式語言 (text-based programming language) 的基礎結構,在 Scratch 中反而容易被忽略。Scratch 中省去了使用變數來紀錄次數、遞增變數與條件判斷等複雜控制,我們可以簡單使用「重複幾次」來執行特定次數的指令,如下面程式會執行恰好10次的「拍手」,不多也不少。有確定次數與精確計算的需求,那麼使用「重複幾次」的所造成的結果是可以預期與設想的。

    和前例有 bug 的程式相比,以下全部使用「重複幾次」,對於「拍手」與「歡呼」指令的總次數都是可以預先算出來的,程式的流程規劃相對是比較簡單明確。
  3. 條件迴圈 (Conditional Repeated Execution)
    這是 Scratch 中相對比較進階的概念,當中包含了「重複執行」(Repeated Execution) 與「條件判斷」(Conditional Execution),甚至是變數 (Variables) 的概念。以下,我們以口語方式來瞭解這個結構的意圖。
    如下圖:
  • 現在變數「放暑假」的內容設定為「假」,也就是暑假還沒到來
  • 重複執行「上學」,直到「『放暑假』的內容等於『真』」;(直到世界末日發生,我們都要不停地重複努力生活)
    因為「放暑假」的內容不為「真」,所以還是繼續重複執行「上學」
  • 如果,一等到「放暑假」的內容為「真」,就會滿足「綠色的條件判斷」,那麼這個迴圈就會結束而離開,不再重複執行。而「單車環島」的指令就會執行,環島去吧!

以下,利用「條件迴圈」來達成「無限迴圈」​,但更具有彈性。​​​​​​只要隨時改變變數 stop 的內容,就可以結束離開「重複執行」,有機會「歡呼」。

閱讀完這麼多的內容,為自己執行一個「歡呼」指令吧!

2017-03-30 Code.org - 課程 4: 終極挑戰:綜合應用 #5

資訊教育

Code.org - 課程 4: 終極挑戰:綜合應用 #5

https://studio.code.org/s/course4/stage/22/puzzle/5

12~13 行解,出奇的簡單喔!

2017-03-15 Code.org - 課程 4: 終極挑戰:綜合應用 #3

資訊科學

Code.org - 課程 4: 終極挑戰:綜合應用 #3

https://studio.code.org/s/course4/stage/22/puzzle/3

17~18行程式解

線上影片
影片 影片名稱
Scratch with Micro:bit BLE controller 歡樂夾娃娃機 (claw crane) - YouTube

1 2018-09-29 Scratch Scratch with Micro:bit BLE controller 歡樂夾娃娃機 (claw crane) - YouTube

專案說明: http://class.tn.edu.tw/modules/tad_web/news.php?WebID=1384&NewsID=13458 Scratch project https://scratch.mit.edu/projects/229134627/ Scratch2 - Micro:bi...

搜尋

QRCode

QR Code

AQI


臺南市臺南測站
空氣品質指標(AQI):
人體健康影響:

活動剪影秀

  • slider image 1
  • slider image 2
  • slider image 3
  • slider image 4
  • slider image 5

三年級 3D 列印課程與遊戲

英文查詢與Pixabay



Tinkercad – 免費的線上 3D CAD 應用程式