結構化程式設計(1)
結構化程式設計課程脈絡
“真正重要的不是學習哪種程式語言,而是建立程式設計基本觀念” |
程式設計概念
1.程式設計步驟
2.編程(程式設計)如寫作
比如說“一個蘋果從天上掉下來”,轉化成Scratch語言怎麼說呢?
首先要有一個擁有藍天的背景,接著蘋果在Y軸座標為170~180的天上出現,然後蘋果在Y軸方向每隔0.3秒下落10步,等到碰到地面了,還要能停止下落。 |
視覺(圖形)化程式語言工具-Scratch
小五學生自製動畫紅到MIT
https://www.inside.com.tw/amparticle/12969-11-year-old-boy-coding-spread-to-mit
用Scratch做一個3D引擎
https://www.china-scratch.com/news/9464
牛刀小試
https://scratch.mit.edu/projects/190329351/
Scratch程式設計實作
1.Scratch介面說明
(1)2.0版
(2)3.0版(2019.01.03)
2.Scratch專案構成的要素
3.事件導向程式設計及物件導向程式設計
在Scratch環境中設計程式,第一件事是要決定我們加入的程式積木要在什麼條件發生(觸發)的時候開始執行它們。此種方式,可以看做是「事件導向」的程式設計方式。
牛刀小試
控制角色移動的方式
4.Scratch介面操作
教學影片1(快速1.25倍.邊看邊操作Scratch)
5.Scratch積木分類
教學影片2(快速1.25倍.邊看邊操作Scratch)
實作-電腦遊戲的資料處理
牛刀小試
老師提問1:您覺得電腦遊戲(Computer Game)是甚麼?
老師說明1:
電腦遊戲就是程式.其目的是依照我們設定的流程處理資料 |
以上這句話有二個涵義:
1.程式的目的是處理資料
2.程式包含處理資料的步驟. 我們可以把程式執行的流程分成三個階段,如下圖
圖片引用:https://sites.google.com/site/ezpythoncolorcourse/dataandvariableintro
圖片引用https://www.csie.ntu.edu.tw/~b98902112/cpp_and_algo/what_is_program/README.html
在遊戲中有許多的功能包裝、隱藏在程式裡,但是使用者只需要知道輸入、輸出是什麼就好。而程式設計師則要根據輸入資料、設計運算過程、產生輸出資料.程式就是不斷地處理資料
老師提問2:體驗玩小精靈遊戲後.試回答下列問題
Which is more fun? 哪個部份最好玩?
Which is harder? 哪個部份最難的?
How does your strategy change? 你的策略如何改變?
How do you deal with mistakes? 你如何處理錯誤?
老師說明2:
小精靈這款遊戲從1980年推出到現在,一直都是人人心目中的經典之作,在進行遊戲中,我們簡單可把畫面進行分類。
問題定義:
在時間限制內Pacman將小藥片吃完,完成闖關任務。. |
問題拆解:
1 Pacman 要在迷宮裡四處移動,吃掉所有的pill(小藥片)
才能過關。迷宮左右兩邊有傳送通道,Pacman 可以從迷宮左邊離開,然後在迷宮右邊出現,反之亦然
2.有四隻Ghost(鬼)會追Pacman,每隻Ghost 都有不同的顏色。如果有Ghost 抓到了Pacman,Pacman 就會少一條命。如果Pacman 吃到四個角落的Super_pill(大力丸),Ghost 就會暫時變成藍色,這段時間內Pacman
3.可以吃掉Ghost,獲得額外的分數。每當獲得一定的分數之後,迷宮內就會出現加分的水果。Pacman 將迷宮中的pill 都吃完後,這一關就結束,進入速度加快的下一關
問題簡化:
1.得分規則:小精靈吃到小藥片或者吃到水果得分 2.限制規則:小精靈被Ghost抓到少一條命 3.過關規則:小精靈吃完小藥片而且吃完大力丸過關 |
在規劃以及思考的過程當中,其實你的腦中已經有了運算思維的思考模式,並且透過分析與問題的歸納,包含行走的路線,得分的方式,躲避GHOST技巧,最終完成關卡。
因此,運算思維並不是我們誤以為的複雜、高層次與困難,而是簡單且生活化的思維方式。
程式實作
程式下載
簡易題:
挑戰題:
◆ 四隻鬼在四個角落出現,不停移動,每3-5秒隨機改變上下左右方向,碰邊界反彈180度。(右圖)
◆ 小精靈生命值3次,死亡1秒後在畫面中央由透明變不透明,再次開始朝右移動。
◆ 小精靈碰鬼時,會有小精靈死亡消失的過程,再停止遊戲。
◆ 遊戲隨著時間增加難度,如加快鬼和小精靈的移動速度、增加鬼的數量…
◆ 音效、背景音樂
◆ 任何想到的點子
資料引用詹智傑老師
scratch教學資源網
桃園市新屋國中詹智傑老師(課綱委員)
https://sites.google.com/a/swjh.tyc.edu.tw/zhan-zhi-jie-ce-shi-yong/cheng-shi-she-ji
謝東森老師
https://sites.google.com/a/gdps.ntpc.edu.tw/scratch-jiao-xue-wang-zhan/you-xi-ti-ku/2019jiao-xue
均一
https://www.junyiacademy.org/computing/root/scratch-3-m01
花蓮呂老師
宜蘭胡老師
http://blog.ilc.edu.tw/blog/blog/1279
美麗新世界
高慧君老師
科丁聯盟
http://www.healthup.org.tw/marketing/course/course.asp?repno=13
Scratch台灣愛好者
社團法人中華民國愛自造者學習協會」(PTWA)
https://programtheworld.tw/main.php
自造者教學網
http://itopnet.blogspot.com/?m=1
高科大何敏煌教授
https://nkust.gitbook.io/scratch-3/
TC電子書
http://mail.wcjs.tc.edu.tw/~aher/modules/tad_book3/pda.php?tbdsn=100
Scratch台南線上教材
https://sites.google.com/site/scratchtainanclass/
http://www.hmhsieh.idv.tw/game1071/game1071a.htm
三角貓功夫
http://www.scratchkungfu.com/
遊戲自由e學園4 Scratch3
http://163.20.239.129/~teach/62scratch/download/index.html
巨岩出版
http://163.26.179.6/ctweb/scratch3/html/lesson1.html
宏全
http://w3.baps.tp.edu.tw/teachers/scratch123/index.html
大陸李澤老師
http://v.qq.com/vplus/f225285f93d7a62cd96face787e921b3?page=video
https://www.woteach.cn/course/view.php?id=6
CC哥教你編程
少兒編程
http://www.code6.cn/post/11194.html
https://www.kidscoding8.com/category/scratch
http://m.ituring.com.cn/book/tupubarticle/22638
https://www.kidscoding8.com/101717.html
https://www.kidscoding8.com/4276.html
https://scratch.mit.edu/studios/5987509/
Scratch – 小貓收集錢袋遊戲
https://www.kidscoding8.com/106552.html
百科問答
http://www.haohaodada.com/scratch_teach/Scratch_L10.html
電子點餐系統
https://kada.163.com/project/2438104-2835031.htm
https://kada.163.com/discover.htm?tag=600
https://jingyan.baidu.com/showlist/detail/a3a3f811a455608da2eb8ab9?fr=rec&
https://www.bilibili.com/video/av36199577/
https://v.qq.com/x/page/t0753xhunm2.html
SCRATCH清單
https://jingyan.baidu.com/article/20b68a8885104a796cec620e.html
https://www.bunian.cn/so/key/scratch%E9%93%BE%E8%A1%A8
https://drive.google.com/drive/folders/1HNVRuBveQQuwsG4_RE3bhUxw3frbOE0S
SCRATCH擴充套件
https://blog.gasolin.idv.tw/2019/11/19/scratch3-internet/
Scratch迷宮尋寶與簡易AI設計
http://beardad1975.blogspot.com/2016/10/scratchmazeai.html
https://pdes1.blogspot.com/2018/02/scratch.html
http://www.tootood.com/thread-78-1-1.html
其他
http://www.okpc777.com/wp/%e7%b6%b2%e8%aa%8c/page/2