GMCC Scratch 線上解題 評測流程
( 文件)
https://app.box.com/s/1zalkcr2y8zmrlszlttjxiawq6s22mdd
(影音)
影音說明:
https://youtu.be/n7lYqtBQ4Nw
or
http://140.127.45.191/ASFRoot/GMCC/Contest/Scratch/Scratch%20評測流程說明.ecm.mp4/index.html
-------------------------------------------------------------------------------------------------
(中華數學協會)
程式城教學計畫 ( Coding City )
Scratch 線上評測評分準則 ( Scratch Rating
Rubric )
1. 邏輯分析:
程式流程控制,根據程式的邏輯程序之深度與判斷的豐富性,考量程式邏輯與多層控制結構之掌握。並針對無意義之流程、無意義之變數命名酌予扣分。
2. 事件:
繪圖工具與使用者互動:根據自定義之視覺效果、向量圖形與使用者事件驅動互動之豐富性、多元性進行評分。
3. 視覺:
程式繪圖與視覺效果:透過程式化的方式展示繪圖邏輯,並可透過程式變數或流程產生自定義圖形與輸出結果。
4. 變數使用:
變數與列表應用:對變數之四則運算、操作形式、與變數操作之效率。
5. 遊戲互動:
流程豐富性:根據可能的流程變化數量,評估程式流程的掌握程度。
6. 數學運算:
程式之精簡性:考慮程式是否存在重複且無意義的程式碼,或是可使用函數、條件判斷等方式更加精簡之程式碼。
SA( Scratch Analyzer) : Scratch Rating
Rule & Rubric
Contest Program ( sb3 file )
|
Project (URL
Loading from MIT )
|
Math數理
正確性 0-100 (GM-CAS) |
Math數理
正確性 0-100 (GM-CAS)
|
General (GM-CAS)
客觀50 ( Dr. Scratch )
1.
邏輯 if command
2.
數據表示 variables
3.
平行性 Multi task
4.
同步化 Sync
5.
用戶互動 i/o mouse
6.
流量控制
7.
抽象化
8.
腳本重複
9.
名稱不正確
10.
死碼
11.
屬性初始化
|
General
(GM-CAS)
客觀50 ( Dr.
Scratch )
1.
邏輯
2.
數據表示
3.
平行性
4.
同步化
5.
用戶互動
6.
流量控制
7.
抽象化
8.
腳本重複
9.
名稱不正確
10.
死碼
11.
屬性初始化
|
Scenario
Animation or Game
主觀 50
-----------------------------------
1.
創造力
2.
結構
3.
技巧
4.
表達
5.
美感
|
Scenario
Animation or Game
主觀50
------------------------------------
1.
創造力
2.
結構
3.
技巧
4.
表達
5.
美感
|
下面有 Dr. Scratch 評分項目說明
Instructions
related to algorithmic notions of flow control can help you to control
the behavior of your characters, making, for example, certain blocks that
are repeated a few times, or until a situation arises.
與流控制的算法概念相關的指令可以幫助您控制角色的行為,例如,製作某些重複多次的塊,直到出現某種情況為止。
1.
Logic
2.
Data
representation
3.
Parallelism
4.
Synchronization
5.
User
interactivity
6.
Flow
control
7.
Abstraction
8.
Duplicated
scripts
9.
Incorrect
names
10.
Dead
code
11.
Attribute
initialization
|
1.
邏輯
2.
數據表示
3.
平行性
4.
同步化
5.
用戶互動
6.
流量控制
7.
抽象化
8.
腳本重複
9.
名稱不正確
10.
死碼
11.
屬性初始化
|
------------------------------------------------------
1.邏輯
與邏輯思維相關的說明可以幫助您的項目動態化,從而使它們的行為根據情況而有所不同。例如,在故事中,這些指令並不像我們通常希望以相同的方式運行的線性結構那樣重要,但是在其他項目中,例如視頻遊戲對於根據情況執行不同的動作是必不可少的。
2.數據表示
每個Scratch項目都需要一組有關字符的信息,以便正常運行。例如,我們需要知道每個字符的位置,其指向的方向,大小等。此外,程序員可以創建新的信息存儲庫來存儲其他數據,例如我們發現自己的水平,經過的時間,等級,生活,收集的獎勵...
3.平行性
在大多數Scratch創作中,都需要一定程度的並行性。但是並行意味著什麼?並行是幾種情況同時發生的可能性。例如,兩個字符同時執行一個動作或一次執行多項操作。
4.同步化
與同步有關的指令使我們的角色可以按照想要的順序組織事物。
5.用戶互動
與用戶交互性有關的說明可以幫助您的Scratch項目更具交互性,即,運行它的人員可以執行導致項目中新情況的操作。例如,我可以使用鍵盤或鼠標來移動字符,可以回答問題或播放計算機網絡攝像頭,還有許多其他可能性。
6.流量控制
與流控制的算法概念相關的指令可以幫助您控制角色的行為,例如,製作某些重複多次的塊,直到出現某種情況為止。
7.抽象化
問題的抽象和分解能力可幫助您將問題分解為更易於理解,編程和調試的較小部分。
8.腳本重複
想像一下,在一個項目中,我們有兩個程序是由相同的塊組成的,它們僅改變塊的參數或值。
9.名稱不正確
當您開始使用Scratch進行編程時,通常會保留新角色或場景的默認名稱(畫面1,畫面2,背景1,背景2 ...)。當我們的角色或背景很少時,很容易知道每個角色或場景的名字。但是,當角色或場景的數量增加時,情況會更加複雜。因此,命名(易於識別)我們項目的每個字符和方案是一個好習慣,因為可以更快地讀取我們的程序。避免使用默認名稱!
10.
死碼
死代碼是永遠不會執行的程序的一部分。它如何形成?例如,當您使用的程序不是以hat開頭的程序時,或者當某個程序正在等待永遠不會發送的消息時。
11.
屬性初始化
許多程序員在學習編程時重複出現的錯誤之一是無法正確初始化對象的屬性。有哪些屬性?它們是角色的特徵,可以在項目的執行過程中對其進行修改,例如其位置,大小,顏色,方向等。
如果有塊,而不是修改角色的特徵,則應該始終有一個程序,當該程序開始,表示我們要開始的值。例如,如果它修改了一個字符的位置,則我們應該在“單擊綠色標誌時”下面放置一個“轉到”塊,以便將字符放置在其初始位置。
No comments:
Post a Comment