2016年12月28日 星期三

7-2廣播

廣播舉例

先看看如何使用廣播:(摘自陳會安編著,Scratcg2+S2A程式邏輯與Arduino創客訓練課)



廣播的目的為何?

1.在不同角色之間傳遞訊息
2.在同一個角色內當作程式段落的變換之用

問題:

1.廣播可以只針對幾個角色廣播,其他角色不接受廣播嗎?
2.可以同時幾個廣播及接收同時進行嗎?










2016年12月19日 星期一

Scratch 2.0 程式轉exe執行檔

Scratch 2.0 程式轉exe執行檔 

http://blog.ilc.edu.tw/blog/blog/1279/post/83246/550010



實作比賽前的準備與提醒

你覺得得分要訣是什麼?

遊戲好玩、清楚?還是遊戲好玩、刺激?
遊戲有教育性?一邊玩還可以一邊學到東西?又,學到什麼東西呢?

遊戲的完整性

1.遊戲的規則說明清楚
2.遊戲的闖關條件(記分、加分、減分)說明清楚
3.遊戲中會出現各種提示或提醒
4.遊戲前後會出現成功、失敗、換關的說明
5.遊戲畫面有清楚的分數欄、血值、計時....等等
6.遊戲前為何要有片頭......


5-1偵測(計時器、偵測條件、偵測值)

計時器

你會用計時器嗎?使用時記得先將計時器歸零















倒數計時器

如果是要倒數計時,怎麼辦呢?自己寫一個倒數計時器吧!
(順便示範自己製作一個積木時帶入引數的功能)













幾種常用的偵測條件:

1.碰到某個顏色時......
2.碰到某個角色時......
3.碰到滑鼠時......
4.碰到邊緣時......(什麼邊緣啊?)

還有還有......
5.當某個顏色碰到某個顏色時......
6.當按下某個按鍵時......
7.當滑鼠被按下時......

偵測值

計算角色到滑鼠的距離

這有什麼用處啊?你想呢......
1.某個角色要跟著滑鼠(或另一個角色)一起移動......
2.當滑鼠靠近某個角色時,角色就做反應......





























2016年12月15日 星期四

4-1遞增-空


3-0資料、運算

清單

今天第一節先講解資料、運算所有方塊的基本功能,
尤其清單,裡面的翻譯沒翻好,各位'要懂得原文意義。



























運算練習題:

請設計自動計算BMI指數的程式:
1.輸入身高(公尺)、體重(公斤)
2.程式自動計算BMI指數(公式為公斤 除以 公尺 除以 公尺),並進行下列判斷
3.當指數小於18.5,程式會說:BMI指數太輕
4.當指數在18.5-24之間,程式會說:BMI指數正常
5.當指數大於25,程式會說:BMI指數太重









2016年12月7日 星期三

2-1.4面向

兩個面向的例子

有蚊子
https://drive.google.com/drive/folders/0B_BSjnUdpRyGT20xLUhvUWcxZ2s


















指北針
https://drive.google.com/drive/folders/0B_BSjnUdpRyGT20xLUhvUWcxZ2s





0-1存放本社群的scratch範例

存放本社群的scratch範例的雲端硬碟

https://drive.google.com/drive/folders/0B_BSjnUdpRyGT20xLUhvUWcxZ2s

9-1走迷宮

迷宮的製作

網路上有自動產生迷宮地圖的迷宮遊戲產生器
https://briian.com/20064/
http://key.chtouch.com/ContentView.aspx?P=992

使用上下左右鍵盤控制角色移動

參見文章https://www.blogger.com/blogger.g?blogID=8792842071840029057#editor/target=post;postID=1390852621921703080;onPublishedMenu=allposts;onClosedMenu=allposts;postNum=1;src=postname

如何判斷碰到迷宮牆壁呢?

使用顏色判斷如下:











你覺得迷宮遊戲還要有什麼元素呢?

1.加分的寶物
2.追人的鬼
3.到達目的地才算過關
4.......


2-1.3用鍵盤控制角色

使用鍵盤控制角色

當按下「向上鍵」,角色就面向0度,並移動5步;
當按下「向下鍵」,角色就面向180度,並移動5步;
當按下「向左鍵」,角色就面向-90度,並移動5步;
當按下「向右鍵」,角色就面向90度,並移動5步;


















上面寫法與下面這個,有何異同?






































第一種寫法,是利用回應事件的寫法,不必加重複方塊。


2016年12月6日 星期二

3-2.2多執行緒

一條條程式堆疊,從頭到尾執行,叫做一個執行緒。
如果要同一個角色,同步執行多個執行緒,是可以的。
當然不同角色之間,多個執行緒同步執行,也是可以的。

同一個角色內的多執行緒

方法一:使用多個綠旗開始方塊






















方法二:使用廣播、接到廣播方塊

不同角色內執行多個執行緒

方法:使用廣播、接到廣播方塊

練習:
1.兩隻魚,自由移動,當碰到對方時,說:你好。
2.一隻鯊魚,數隻小魚,自由移動,當小魚碰到沙魚時,會消失(當成被吃掉)。



3-2.1如果...否則

如果方塊:

如果方塊,裡面放的的東西叫「條件式」或「判斷式」,是個需要進行判斷的程式。
scratch以兩頭都是尖的方塊來表示「判斷式」。若是兩頭是圓形的方塊,代表「數值」或「文字」。

















條件的達成與否:

1.當「如果」方塊內的條件達成時,就會執行「如果」方塊內部的程式。
2.當「如果」方塊內的條件沒有達成時,就不會執行「如果」方塊內部的程式。
3.使用「如果...否則」方塊,「如果」方塊內的條件沒有達成時,就會執行「否則」方塊內的程式。

最後...

4.不管條件有沒有達件,最後都一定會跑往下一的方塊程式。















大於小於、且、或、非

練習:

請用如果方塊,表示數線內的數。


2-1.2外觀、對話

如何使用說話方塊來製作對話?

1.輪流對話(計時法)
2.自由對話

練習:

設計狗貓左右兩邊踢球,當球來時會說:球來了!

2-1.1畫筆

題目:使用畫筆畫出六邊形

程式設計師在思考問題時,要能找出所有相關因素,並且列出做事的步驟。
想想看,畫六邊形的步驟是什麼:
1.先把腳色移到(0,0)的位置
2.面向右邊90度
3.下筆,並往前移動50步
瞧,這不就畫出第一條線了,接下來....
4.??































作業:

1.畫出五邊形
2.輸入邊數,就會自動畫出幾邊形
3.畫出拋物線
4.畫出五星圖形
5.畫出蜘蛛網

第二題的思考工具:

邊數      轉彎角度    (中心點角渡)邊數與角度關係為何?
  4          90                90
  5          72                72
  6          60                60
  7          ?
  8          ?
  ?





2016年12月1日 星期四

2-1.1動作設計、面向

討論:

1.為什麼角色的造型(或是舞台的背景)用兩張圖,就可以做出動畫效果?用3張圖呢?
2.移動的路樹、天上的雲,是要做成角色的造型?還是舞台的背景呢?
3.動畫一定要角色動、舞台動嗎?

作業:

你會設計程式讓角色做下列動作嗎?
1-1.讓一隻鳥只能在天空的區域(舞台的上半段)移動。
1-2.讓一隻蟲只能在地面底下的區域(舞台的下半段)移動。而且鑽出的洞會留下不同顏色。
1-3.讓甲蟲在樹上爬上爬下。
1-4.讓飛蟲從舞台前飛往螢幕裏面,越飛越遠,身軀逐漸變小。反之,飛蟲從遠處飛到近處。
1-5.讓天空飛的飛機,隨意投彈下來。
1-6.讓地上跑的砲車,往正上方天上發射飛彈。
1-7.有隻膽小的土撥鼠,在地底亂鑽,當鑽出地面時,只敢頭伸出地面東張西望,不敢跑出去地面,然後又回到地裏鑽。

你可以讓背景移動嗎?

2-1.讓車子感覺往右邊馬路走不停。路面、路樹、天上雲跟著移動。
2-2.感覺坐在戰鬥機駕駛座上,一直往前飛。天上的雲、飛鳥一直往機身後方移動。
2-3.坐在戰鬥機駕駛座上,除了往前飛,也可以往左、往右飛。天上的雲、飛鳥一直往機身後方移動。

面向方塊的角度




















可以將方向方塊打勾,舞台上就會出現方向的數值視窗。
X、Y軸打勾後,也都可以出現數值視窗。





















1-2.3找出腳色的中心點

中心點在哪裡呢?

為什麼要找中心點呢?
我們先來做個實驗:1.把舞台(背景1)設為座標圖。2.用方塊程式,讓小貓移到(0,0)的位置:





















此時會發現小貓咪的中心點,約在嘴角的地方。
我們再打開小貓咪角色的造型1,打開中心線,各位看看中心點是不是在貓的嘴角上?





1-2.2角色、舞台

角色的內部設定

點選角色圖示左上角的「!」記號,可以看到角色的內部值。





















請找出下列設定的位置及知道其功能:
1.改變角色的名稱?
2.旋轉方式是什麼作用?
3.XY軸的值?方向角度?

按下坐上角三角記號,就恢復隱藏這些設定。

舞台的設定

點選舞台後,找出下列題目的位置及知道其功能:
1.角色的「造型」區內有造型1、造型2......。舞台的「背景」區內有背景1、背景2......。你會畫背景嗎?
2.舞台內可以寫程式嗎?可以設定音效嗎?
角色的繪製
1.請繪製、創作自己喜歡的一個角色的造型1。記得上色。
2.設定造型1的中心位置。
3.將造型1複製到造型2。
4.更改造型2中手、腳的位置,讓它可以看起來像是在動作。

用上面複製的方法,兩個造型的中心點才會一樣呦!





2016年11月30日 星期三

1-1.2scratch中負數的概念

scratch中負數的概念

負數就是「減」的概念,
例如,要小貓咪往前(往右)走5步,設計如下,空格內填入5:

要往後退5步(往左)呢?就是在空格內填入「-5」。

scratch的移動方塊,有搭配XY座標。在X軸上,往右移動,就填入一般寫法的正數,如果要往左移動,就填入負數。
在Y軸上,往上移動,就填入一般寫法的正數,如果要往下移動,就填入負數。

練習 

底下得數值,會使角色移往哪裡呢?












負數如何進行加減呢?

這是國中的學習內容,其實,用數線可以表示出來的。
這個部份暫時不用知道細節是無妨的。


1-1.1座標

負數的認識

http://www.powercam.cc/show.php?id=107&ch=1&fid=5

數線的認識

https://www.junyiacademy.org/root/junyi-math/junyi-number-lines/v/HQOYANx5nL0

座標的認識

在scratch的舞台範例中,就有一張座標圖:




















請注意:座標中,最邊界上、下、左、右的座標是多少?

與座標有關的方塊






















練習

1.如何讓角色只能上下移動?
2.如何讓角色只能左右移動?
3.如何讓角色只能在天上飛、地底跑?
4.如何讓角色在天上飛,並隨時往下丟出東西?

2016年7月29日 星期五

1-2.1角色的中心點設置


角色中心點的設定:

每個角色都有一個中心點,當點選角色的造型,按下右上角選單,就會出現中心十字線。例如,小貓咪的中心點在嘴角的位置。




















中心點的實驗一:

我們做個實驗,讓小貓咪移到(0,0)的位置,會是身體哪部位移到(0,0)去呢?答案就是小貓咪的中心點位置,也就是它的嘴角位置,會移到(0,0)去。








  
結果如下:















中心點的實驗二:

但是若是改變方式,讓小貓咪碰到藍色線就停止動作,那麼,就不是中心點去碰藍線,而是身體的任何一個部位碰到藍線就停止動作。
 





結果是:貓咪鬍鬚碰到藍線,就停止動作。


2016年6月22日 星期三

scratch線上學習資源

均一教育平台

已經有三門課程了:https://www.junyiacademy.org/root/isc

澎湖人NO1

在澎湖人NO1自由軟體交流網有兩本scratch教學電子書可參考

第一本:http://www.phcno1.net/modules/tad_book3/pda.php?tbsn=2

第二本:http://www.phcno1.net/modules/tad_book3/pda.php?tbsn=31

其他:
google sites教學:http://www.phcno1.net/modules/tad_book3/pda.php?tbsn=29
電子書製作教學:http://www.phcno1.net/modules/tad_book3/pda.php?tbsn=20

Scratch-TW

裡面翻譯的教師手冊及學生手冊,值得參考:
(版面往下拉就看到了)
http://scratch-tw.strikingly.com/

台北市歷年比賽題目

http://scratch.tp.edu.tw/content/%E8%87%BA%E5%8C%97%E5%B8%82%E4%BA%92%E5%8B%95%E9%81%8A%E6%88%B2%E5%89%B5%E4%BD%9C%E7%AB%B6%E8%B3%BD%E9%A1%8C%E7%9B%AE





2016年5月18日 星期三

到均一平台看scratch程式教育影片

均一教育平台是國內知名免費教育平台:http://www.junyiacademy.org/
裡面居然也有不少scratch教學影片,值得初學者進入觀看。



進入均一教育平台首頁後,點選左上角科目/電腦科學/scratch

20160518清單應用練習

2016.5.18.
題目:請輸入四個字母(例如:abcd),電腦會自動以相反順序排出四個字母(例如:dcba)。
思考:
    1.scratch的「輸入」是那個方塊?
    2.輸入四次(各一個字母)?或者輸入一次(四個字母)?
    3.字母要存放在「變數」內或者「清單」內?
    4.重點技術是--如何讓資料庫(清單)內的資料反向排列?
    5.scratch的「輸出」是那個方塊?




引申題:
    1.有辦法不限制輸入四個字母嗎?就是說,可輸入任一個字母,然後依序反向排列。
    2.許多字母組成單字,如何拆解一個單字成許多字母?
    3.輸入的若是數字(例如:5678),也可以反向排列嗎(變成:8765)?

2016年5月17日 星期二

演算法教學參考網站

演算法筆記

國內知名網站!適合高中以上。


















2016年5月16日 星期一

20160122scratch冬令營

文山的文山冬令營活動,冬陽下持續發燒中。為了推廣所以校長親自授課,沒想到也來了幾位志同道合的老師與志工。(摘自2016.1.22.文山國小FB)