• 沒有找到結果。

第四章 結果與討論

第二節 成就測驗結果分析

發現學生在進行算術運算的過程,有兩種迷思概念:

1. 忽略變數在運算過程中的變化,直接代入原始數值,如圖 4.1 所示。

圖 4.1 試題三:忽略運算過程中變數的變化 2. 將算術運算當作解數學聯立方程式,如圖 4.2 所示。

圖 4.2 試題三:當作解聯立方程式

由以上兩點可知,算術運算的概念,在本次課程規劃的教學內容中實有不足 之處,應增加教學單元,把算術運算的基本概念澄清。

二、學生最常犯語法錯誤

依據第四題的結果發現,絕大多數的學生都可以理解問題解決的程序,寫出 if…else 指令的基本語法結構。其中 46%的學生能夠完全正確的依據解題方法與程 式邏輯,寫出選擇結構正確的語法與指令。而在答案有誤的學生中,錯誤類型以 語法錯誤最多,有 85%的學生都有語法錯誤。錯誤類型分析如表 4.10。

表 4.10 試題四:錯誤類型分析(N=46)

錯誤類型 人數比例

1. 沒有作答 9%

2. 語法錯誤 65%

3. 邏輯錯誤 6%

4. 語法與邏輯皆錯誤 20%

其中常見的語法錯誤有:拼錯指令、參數設定錯誤、程式敘述遺漏「;」及

「}」與 if…else 指令用法有誤等。如圖 4.3 為 if…else 指令語法錯誤的例子。

圖 4.3 試題四:if…else 指令語法錯誤

另外也可以在第五題的作答情形中發現,語法錯誤同樣是錯誤類型中最多者。

如表 4.11 所示。

表 4.11 試題五:錯誤類型分析(N=44)

錯誤類型 人數比例

1. 沒有作答 2%

2. 題目理解錯誤 5%

3. 語法錯誤 45%

4. 邏輯錯誤 32%

5. 語法與邏輯皆錯誤 16%

在作答錯誤的類型中,題目理解錯誤是沒有理解題目敘述,以至於解題過程 皆不正確。其他常見的語法錯誤,例如:if…else 指令語法錯誤如圖 4.4、條件式關

係運算子語法錯誤如圖 4.5,以及解題邏輯錯誤如圖 4.6 所示。

圖 4.4 試題五:if…else 指令語法錯誤

圖 4.5 試題五:條件式關係運算子語法錯誤

圖 4.6 試題五:解題邏輯錯誤

另外在第六題中,設計了 2 個邏輯錯誤與 3 個語法錯誤,只有 29%的學生可 以正確地更正選擇結構的語法錯誤。與找出所有邏輯錯誤的人數相比較,能找出 所有語法錯誤的人數比較少。如表 4.12 所示。

表 4.12 試題六:更正錯誤的類型分析(N=84)

更正錯誤類型 人數比例

1. 更正所有語法錯誤 29%

2. 更正所有邏輯錯誤 44%

經由上述的分析發現,在機器人程式設計的教學中,初學者掌握語法的精確 度比較不足,教師應加強語法結構的訓練。

三、學生能理解選擇結構和重複結構的概念,但對指令執行細節則有待加強 重複結構的學習情形,可藉由第二題進行分析。在第二題的作答情形中發現,

31%的學生可以完全答對,49%的學生可答對一半,顯示 80%的學生可以正確的追 蹤第一個 for 迴圈結構。然而這些答對一半的學生,雖然可以理解第二個 for 迴圈 的執行概念,卻在處理指令程序時犯下錯誤,沒有正確旋轉機器人前進的方向。

如圖 4.7。

圖 4.7 試題二:程序處理錯誤

選擇結構的學習情形,則可參考第五題的作答情形進行分析,有部分學生會 在 if 指令的條件式中,誤用指定運算子如圖 4.5,或者將語法結構錯置如圖 4.4 所 示。教師可在教學過程中,強調語法結構的正確性,提醒學生多加留意。

四、程式設計解題能力分析

試題五設計了一個問題情境,要求學生設計並撰寫程式,令機器人走出迷宮。

有 48%的學生能正確解答,學生擬定的解題方法如表 4.13,可歸類如下:

表 4.13 試題五:解題方法統計(N=84)

解題方法 人數比例 成功作答比例

1. 沒有作答 1% 0%

2. 循序前進 51% 67%

3. 循序前進+for 迴圈簡化步驟 12% 40%

4. while 迴圈+碰撞偵測 36% 23%

最多人使用「循序前進」方法進行解題,且成功比例最高,這種方法是利用 一連串的移動指令,藉由指令的依序執行來完成解題,邏輯複雜度較低,如圖 4.8。

圖 4.8 試題五:「循序前進」解題方法

第二種解題方法「循序前進+for 迴圈簡化步驟」,則是「循序前進」方法的改 良,將重複的步驟,用重複結構取代,如圖 4.9。

圖 4.9 試題五:「循序前進+for 迴圈簡化步驟」解題方法

第三種方法「while 迴圈+碰撞偵測」則是「運用碰撞感應器進行偵測,當撞 到障礙物就進行轉彎,反之則前進」的設計方式,運用的邏輯思考層次較高,語 法結構較困難,必須理解重複結構與選擇結構並正確使用,如圖 4.10。

有學生表示原本想要用這種解題方法,但是怕寫錯而改用比較有把握的「循 序前進」方法。也有學生運用工具,在考卷上先畫出解題方法的流程圖,再比對 流程圖撰寫程式。

圖 4.10 試題五:「while 迴圈+碰撞偵測」解題方法

五、除錯能力分析

如表 4.14 的結果可知,69%的學生可以找到至少 3 個以上的錯誤。其中最多 人找出的錯誤是程式敘述遺漏「;」,有 80%的學生可以更正這個錯誤。

表 4.14 試題六:程式除錯答題統計(N=84)

更正錯誤數量 人數比例

五個 15%

四個 27%

三個 27%

二個 11%

一個 10%

O 個 10%