教材:https://reurl.cc/prlALb
今日問題
MakeCode 進程
ChatGPT 運用心態:躲避不如直球面對
你是人類專家
正常狀況下一定會給答案
每次(人)的答案都不一樣
它胡說八道時:
換句話說(是問的人的問題,它只是程式!)
人類專家要能自判
換它版的 GPTs(Claude、MS Copilot、Google Gemini、……)
重開新主題(topic)
如果(完成任務) then Go home!
如果(完成學習們務) then 拆解、拆解、再拆解=>寫筆記、發表
編程開發工具
B1.Heart
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 點亮愛心圖案 的 micro:bit Python 程式硬体拆解:LED
程式拆解:
while(判斷條件):
(空四格排縮)…OOP
B1a:產生 四個完全不同的愛心圖案 的 micro:bit Python 程式
B2.Beating heart
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 愛心跳動 的 micro:bit Python 程式
B2a:產生 有音效的愛心跳動 的 micro:bit Python 程式
B3.Animated animals
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 動物圖案動畫 的 micro:bit Python 程式
B3a:產生 有背景音樂的動物圖案動畫 的 micro:bit Python 程式
B4.Emotion badge
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 按 A 按鈕出現笑臉;按 B 按鈕出現哭臉 的 micro:bit Python 程式硬体拆解:按鈕(button)
程式拆解1:單选
if(判斷條件):
(空四格排縮)…
程式拆解2:二选一
if(判斷條件):
(空四格排縮)…
else:
(空四格排縮)…
拆式拆解3:多选
B4a:產生 shake 時會隨機抽出喜怒哀樂心情之一 的 micro:bit Python 程式 的 micro:bit Python 程式
B5.Get silly
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 按鈕 A 按下出現喜、按鈕 B 按下出現怒、按鈕 A+B 按下出現哀、logo 按下出現樂 的 micro:bit Python 程式硬体拆解:加速度感測器(accelerometer),06:10
B5a:產生 按 A 按鈕,隨機不重覆點亮 micro:bit 5x5 LED 的 micro:bit Python 程式
(I1.Compass North
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 當指北針 小於 45 度 或 大於 315 度就顯示 N 的 micro:bit Python 程式使用前先磁力校正(calibration)
参考影片,09:22
硬体拆解:磁力感測器(magnetic sensor)
程式拆解:複合逻輯(compound logic)判斷條件
(A) or/ and (B)
I1a:永遠指北(?)
I2.Max-min thermometer
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生符合以下條件的 micro:bit Python 程式: 隨時記錄最高和最低溫。 按 A 按鈕時顯示目前測得的最低溫;按 B 按鈕時顯示目前測得的最高溫拆解:如何記錄目前最高/低溫?
暫存
I2a:產生符合以下條件的 micro:bit Python 程式: 隨時記錄最高和最低溫。 按 A 按鈕時顯示目前測得的最低溫;按 B 按鈕時顯示目前測得的最高溫;按 logo 時在 LED 矩陣上顯示平均溫度:(最低溫+最高溫)/2
學著改修程式
測溫時不要 delay
I3.Make some noise
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display,
產生 按按鈕 A 播長歌 的 micro:bit Python 程式硬体拆解:蜂鳴器(buzzer)
I3a:產生 按按鈕 A 播長歌曲;按按鈕 B 播短音效的 micro:bit Python 程式
修詞
I4.小星星
咒語:
你是 MakeCode 的 micro:bit Python 專家,
以這個 APIs https://python.microbit.org/v/3/reference/display ,
產生 播小星星(http://m.ertongzy.com/erge/ergejianpu/72341.html ) 的 micro:bit Python 程式拆解:陣列(array)
name[a, b, c, ...],從 0 開始索引(index)
I4a:產生 播小星星(http://m.ertongzy.com/erge/ergejianpu/72341.html )變奏曲 的 micro:bit Python 程式
流程图
★I5.抽籤
咒語:
你是 MakeCode 的 micro:bit Python 專家,
根據這個 APIs https://python.microbit.org/v/3/api ,產生符合下列規則的 micro:bit Python 程式
按下 A 按鈕後
1.隨機從 0~9 不重覆地抽籤,並顯示出籤號
2.抽滿十次後只要發出響聲並歸零,清除顯示
3.如果隨機產的數字已在陣列中了,就往後找到下一個沒抽過的數字拆解:如何不重覆抽?
如果該號已抽,則往後找下一數
I5a:產生符合下列規則的 micro:bit Python 程式
按下 A 按鈕後
1.隨機從 0~9 不重覆地抽籤,並顯示出籤號
2.抽滿十次後只要發出響聲並歸零,清除顯示
3.如果隨機產的數字已在陣列中了,就往後找到下一個沒抽過的數字
4.十支籤都抽完後發出提醒音效+for loop
教學服務項目:
編程運算思維教育:Python、fChart、micro:bit、App Inventor、Thunkable、Scratch、Java、Android、C
Makers(自造者/創客)教育
STEM/STEAM 教育
機器人教育:科學魔法車
物聯網教育:Arduino、Raspberry Pi、ESP 系列
AI(Artificial Intelligence,人工智慧)教育:資料探勘(Data Mining)、自然語言處理(Natural Language Process,NLP)、數位學習(e-Learning)
教學設計