(通識)計算機程式
(Computer Programming)
九十八學年度第二學期



本次網頁修訂日期: 4/17/2012

公告:

  • 學期成績公佈, 有問題請速洽任課教師, 成績將於7/8(四)上午送出
  • 末考成績與參考答案公佈
  • 作業3成績公佈
  • 上課前確實預習, 上課時聽講並發問, 回家確實複習可以增加學習成效
  • 5/21任課教師另有要事, 5/22(六)下午2:20~5:20補課
  • 中考成績與參考答案公佈  
  • 物件與類別投影片更新內容
  • 作業2成績公佈
  • 期中考時間為4/23下午2:20~6:00, 不可使用任何電腦, 但可攜帶所需書面資料.  屆時不可借閱他人資料.

    下載教材:

    教學計畫與C#簡介 (ppt 檔, 990 KB) (updated: 2/24/2010)
    BlackJack程式  (WinRAR ZIP 壓縮檔, 1,868KB) (updated: 2/7/2009)

    整合發展環境初步與簡易C#程式 (ppt 檔, 916 KB) (updated: 2/12/2010)
    整合發展環境初步與簡易C#程式 範例程式  (WinRAR ZIP 壓縮檔, 76.9KB) (updated: 2/12/2010)


    實值變數與運算式 (ppt 檔, 933 KB) (updated: 2/12/2010)
    實值變數與運算式 範例程式  (WinRAR ZIP 壓縮檔, 258KB) (updated: 2/12/2010)

    流程控制 (ppt 檔, 461 KB) (updated: 3/4/2010)
    流程控制 範例程式  (WinRAR ZIP 壓縮檔, 344KB) (updated: 3/4/2010)


    陣列 (ppt 檔, 470 KB) (updated: 3/15/2010)
    陣列 範例程式  (WinRAR ZIP 壓縮檔, 286KB) (updated: 3/15/2010)


    函式 (ppt 檔, 372 KB) (updated: 3/27/2010)
    函式 範例程式  (WinRAR ZIP 壓縮檔, 235KB) (updated: 3/27/2010)


    程式規劃與函式導向程式設計 (ppt 檔, 972 KB) (updated: 4/5/2010)
    程式規劃與函式導向程式設計 範例程式  (WinRAR ZIP 壓縮檔, 155KB) (updated: 4/5/2010)


    物件與類別 (ppt 檔, 648 KB) (updated: 5/3/2010)
    物件與類別 範例程式  (WinRAR ZIP 壓縮檔, 554KB) (updated: 4/19/2010)


    物件導向程式設計 (ppt 檔, 1.07 MB) (updated: 5/1/2010)
    物件導向程式設計 範例程式  (WinRAR ZIP 壓縮檔, 240KB) (updated: 5/1/2010)


    繼承與多型 (ppt 檔, 729 KB) (updated: 5/22/2010)
    繼承與多型 範例程式  (WinRAR ZIP 壓縮檔, 662KB) (updated: 5/22/2010)


    檔案讀寫與例外處理 (ppt 檔, 427 KB) (updated: 5/26/2010)
    檔案讀寫與例外處理 範例程式  (WinRAR ZIP 壓縮檔, 234KB) (updated: 5/26/2010)


    基礎視窗程式設計 (ppt 檔, 1.29 MB) (updated: 5/29/2010)
    基礎視窗程式設計 範例程式  (WinRAR ZIP 壓縮檔,4.16MB) (updated: 6/4/2010)



    期中考試題  (Adobe Acrobar pdf 檔, 109KB) (updated: 4/17/2012)
    期中考參考解答  (Adobe Acrobar pdf 檔, 217KB) (updated: 5/12/2010)

    期末考試題  (Adobe Acrobar pdf 檔, 217KB) (updated: 4/17/2012)
    期末考參考解答  (Adobe Acrobar pdf 檔, 523KB) (updated: 6/30/2010)


    第一週回家練習題目 (txt 檔, 148B) (updated: 3/5/2010)
    第一週回家練習參考解答  (txt檔, 473B) (updated: 3/5/2010)

    第二週回家練習題目 (txt 檔, 280B) (updated: 3/5/2010)
    第二週回家練習參考解答  (txt檔, 968B) (updated: 3/12/2010)

    第三週回家練習題目 (txt 檔, 1.59KB) (updated: 3/12/2010)
    第三週回家練習參考解答  (txt檔, 2.05KB) (updated: 3/19/2010)

    第四週回家練習題目 (pdf 檔, 101KB) (updated: 3/19/2010)
    第四週回家練習參考解答  (txt檔, 813B) (updated: 3/26/2010)

    第五週回家練習題目 (txt 檔, 1.03KB) (updated: 3/26/2010)
    第五週回家練習參考解答  (txt檔, 1.30KB) (updated: 4/2/2010)

    第六週回家練習題目 (txt 檔, 840B) (updated: 4/2/2010)
    第六週回家練習參考解答  (txt檔, 1.42KB) (updated: 4/9/2010)

    第七週回家練習題目 (txt 檔, 1.36KB) (updated: 4/9/2010)
    第七週回家練習參考解答  (txt檔, 2.48KB) (updated: 4/16/2010)

    第十週回家練習題目 (txt 檔, 674B) (updated: 4/30/2010)
    第十週回家練習參考解答  (txt檔, 3.00KB) (updated: 5/7/2010)

    第十一週回家練習題目 (txt 檔,1.52KB) (updated: 5/7/2010)
    第十一週回家練習參考解答  (txt檔, 3.58KB) (updated: 5/14/2010)

    第十二週回家練習題目 (txt 檔,1.68KB) (updated: 5/15/2010)
    第十二週回家練習參考解答  (txt檔, 4.59KB) (updated: 5/22/2010)

    第十三週回家練習題目 (txt 檔,894B) (updated: 5/22/2010)

     

     

  • 授課教師: 鄭士康  (電機二館545室)

  • 助教: 趙式隆(電機所計算機組博士班學生),  email:d97921031@ntu.edu.tw, Office Hours: 暫定上課前或上課後一個小時在教室, 也可以寄信約時間到實驗室討論

  • 上課時間地點: 每星期五下午2:20~5:20, 校計算機中心212電腦教室

  • 學分數: 2 (大學部學生通識教育課程, 自備個人電腦, 亦可使用計中電腦教室)

  • 注意:本課程將須投入甚多時間撰寫程式, 課業繁重同學請慎重考慮

  • 預修課程: 無

  • 課程編號: 90160200

  • 課程網址: http://cc.ee.ntu.edu.tw/~skjeng/ComputerProgramming2010Spring.htm
  • 近年課程網址(供參考): http://cc.ee.ntu.edu.tw/~skjeng/ComputerProgramming2009Spring.htm

                                                http://cc.ee.ntu.edu.tw/~skjeng/ComputerProgramming2008Spring.htm

                                                http://cc.ee.ntu.edu.tw/~skjeng/ComputerProgramming2007Spring.htm

  • 課程目標: 訓練學生能夠利用C#語言寫作計算機程式, 並從中培養解決問題之規畫, 邏輯與偵錯能力, 及過程與結果呈現之表達能力

  • 教科書:
            自編投影片, 上課使用Visual C# Express 2008軟體, 此一軟體在家自行練習可由微軟網站免費下載.
            市售C#入門書籍均可參考.
      除各章投影片Power Point講義外, 課程2~7章另發解說講義, 為任課教師編寫中之教科書的部份內容.

  • 課程內容概要: 上學年授課過早引入物件導向設計, 同學較難適應.
    本年改由基本觀念循序漸近, 較適合初學者. 第8章
    以後則程度較好同學亦能有所收獲.

    1. 教學計畫與C#簡介
    2. 整合發展環境初步與簡易C#程式
    3. 實值變數與運算式
    4. 流程控制
    5. 陣列
    6. 函式
    7. 程式規劃與函式導向程式設計
    8. 物件與類別
    9. 物件導向程式設計
    10. 繼承與多型
    11. 檔案讀寫與例外處理
    12. 基礎視窗程式設計
    13. Collections與應用
    14. 運算子多載


  • 任課教師辦公室會面時間: 請一週前以電子郵件預約(email address: skjeng@ew.ee.ntu.edu.tw)


  • 成績計算方法:  期中考 20% + 作業 30% + 期末考 20% + 期末程式書面報告 15% + 期末程式口頭報告及展演 15%

  • 作業每次每人繳交一份, 不可多人合交. 如為多人合作, 亦須分開撰寫不同內容

  • 作業及書面報告請印出紙本, 於規定時限內繳交, 除非情況特殊, 勿交電子檔.


  • 作業內容及評分要點:  三次作業均不指定題目,由同學自行依興趣選擇作業主題,亦可配合期末專題,作 為其先期嘗試或構成其一部份.交來之作業須以書面介紹選擇題目之動機,構想解說,程式測試規畫, 結構圖或UML圖, 程式列表, 程式測試執行結果,學習心得,參考文獻等.作業以 A+ = 97.5, A = 92.5, A- = 87.5, B+ = 82.5, B = 77.5, B- = 72.5 等評分, 缺交為0分,遲交依規定扣分.評分要點為構想及動機之說明及結構圖或UML圖 是否清楚,程式測試規畫是否完整,程式註解是否清楚適當,程式是否簡潔易讀,程式是否完成,學習心得是 否言之有物等.同學若自修或向學長學得超過課程進度之內容,並應用於作業,可敘明過程於學習心得部份, 當酌於加分

  • 繳交作業日當天為作業討論,抽籤決定同學上台說明作業內容


  • 期中考於 4月23日 原上課時間在原教室舉行,範圍為第一章至前一週進度

  • 期末考於 6月25日 原上課時間於原上課教室舉行, 範圍為期中考所考範圍之後的部分,


  • 期末程式可以一至三人一組完成, 注意慎選夥伴, 若有重大合作困難, 請及早反應處理

  • 7月2日下午2:20~6:00 於原教室舉行期末程式成果發表會,每組屆時須繳交完整書面報告一份,並
    口頭報告與展演程式.書面報告成績由教師評定,口頭報告與展演程式成績則同學相互評分.

  • 口頭報告與展演程式時, 每組利用Power Point報告並展演程式10分鐘. 報告順序臨時抽籤決定. 建議各組在口頭報告開始前先行將Power Point檔及程式輸入教室電腦. 臨時自網路或光碟, 隨身碟, 磁碟等輸入程式者, 輸入所需時間均計入各組所分配之時間內.


  • 期末專題展示會時各組另須於展示會開始二十分鐘內交來書面報告一份, 逾時須於 7月5日 中午十二時前補交,且成績打八五折. 書面報告應比照正式學術報告格式撰寫, 包含摘要(Abstract), 緒論(Introduction), 本文(至少須涵括研究動機, 相關之課程章節, 文獻回顧, 理論說明, 實作程式架構, 研究過程, 程式輸出, 與學習心得等內容, 並適當註明引用文獻), 結論(Conclusions), 參考文獻(References).
  •  7月5日中午十二時 後繳交者不予計分.


    除非考卷或作業批改登記發生錯誤,絕不更改成績



  • 課程進度表

    作業及期末專題書面報告須在預定繳交日
    第一節上課二十分鐘內繳交,
    逾時補交者其成績將乘以0.85之n次方

    (繳交時限截止至作業討論前n=1,

    討論開始至第二天下午2:30 n=2, 隨後每天下午2:30開始遞增n)


    繳交作業日當天第三節為作業討論,抽籤決定同學上台說明作業內容

    (作業討論抽到的同學若未事先請假, 又不在教室內, 作業成績先九五折,

    隨後由抽到之時間至該同學出現或下課, 每十分鐘將該份作業成績乘以0.95一次)


     

    週次 日期 預定進度 實際進度 作業繳交及討論進度 備註
    1 2/26 第1,2章 第1,2章    
    2 3/5 第2,3章 第2,3章 指定第一次作業  
    3 3/12 第3,4章 第3,4章    
    4 3/19 第4,5章 第4章    
    5 3/26 第5章 第4,5章 繳交並討論第一次作業, 指定第二次作業   
    6 4/2 第5,6章 第5章    
    7 4/9 第6章 第5,6章     
    8 4/16 第6,7章 第6,7章 繳交期末專題分組名單  
    9 4/23   期中考 
    10 4/30 第7,8章 第7,8章   繳交並討論第二次作業, 指定第三次作業  
    11 5/7 第8章 第8章  繳交期末專題構想書  
    12 5/14 第8,9章 第8章    
    13 5/21 課教師另有要事, 5/22下午2:20~5:20補課  
      5/22 第10章 第9,10章    
    14 5/28 第10章  第10章  繳交並討論第三次作業   
    15 6/4 第10, 12章  第10, 12章   10.10, 10.12, 10.14, 10.16
    四節上課跳過, 不會考
    16 6/11 第12章        第12章    
    17 6/18 第11章 第11章    
      6/25   期末考 
      7/2   期末專題發表會 


  • 分組名單

    組別 姓名 期末程式主題
    1 黃新堯 學生記帳管理程式
    許瑞君
    黃鈺翔
    2 周韋君 富饒之城
    王品蒨
    王絢瑩
    3 陳彥文 俄羅斯方塊
    林莉鈞
    洪偉晉
    4 范良芳 攻佔百大
    楊皓霖
    蔡涵超
    5 呂宜泓 在低網路頻寬環境下針對BBS瀏覽軟體進行之瀏覽體驗加速
    俞敦平
    6 林京翰 幸福人遊戲
    錢    欣
    7 劉至堯 賓果遊戲
    8 吳文馨 記憶卡遊戲
    (7/2參加服務隊, 必須提前於6/18最後一節課報告)
    謝珍玲
    9 顏兆銘
    10 高聖淵 撿紅點
    李羽倩
    11 周竑廷 RPG遊戲設計
    翁宗民
    黃雅琪
    12 楊涵丞 大富翁遊戲
    13 林祐平 吊死人(Hangman)遊戲
    吳泰霖
    陳宗暘
    14 蘇琬婷 Turn the Tide運轉潮汐遊戲
    15 張安頤 電子雞遊戲
    16 周松霈 以"阿凡達"為背景之角色扮演遊戲
    17 李紹銘 陽春版炸彈超人遊戲


  • 成績紀錄

    下列成績中, A++ = 99, A+ = 97.5, A = 92.5, A- = 87.5, B+ = 82.5, B = 77.5, B- = 72.5, 缺交 = 0

    期末程式口頭報告及展演由同學相互評分

    期末程式口頭報告及展演為1分至5分(x), 換算得分為 70+5x , 缺席為0分

    遲交作業或報告每逾n日即以成績乘以0.85之n次方計分

    (繳交時限截止至作業討論前n=1,

    討論開始至第二天下午2:30 n=2, 隨後每天下午2:30開始遞增n)

    (作業討論抽到的同學若未先請假, 又不在教室內, 作業成績先九五折,

    隨後由抽到之時間至該同學出現或下課, 每十分鐘將該份作業成績乘以0.95一次.)

    學期成績=作業一*0.1+作業二*0.1+作業三*0.1+期中考*0.2+期末考*0.2+ 期末口頭報告*0.15+期末書面報告*0.15

    學期成績小數點以下無條件進位

    以下列出之成績均為尚未打折換算之原始成績

    學號 作業一(10%) 作業二(10%) 作業三(10%) 期中考(20%) 期末考(20%) 期末專題口頭報告(15%) 期末專題書面報告(15%) 學期成績
    B97104039 A A+ B+ 75 45 2.85714285714286 A- 78
    B97104051 A 停修
    B97105027 A- A- A(遲交, 14:46) 87 67 2.96153846153846 A+ 84
    B98203063 A- 缺交 缺交 60 缺考 缺席 缺交 21
    B96207015 A A B+ 93 77 2.428571429 A 87
    B95207014 A- A B+ 90 92 3.75 A+ 91
    B95602042 A A+ A 97 102 4.77777777777778 A+ 97
    B98209002 A+ A+ A 94 94 3.71428571428571 A+ 95
    R97222023 A- 缺交 缺交 缺考 缺考 缺席 缺交 9
    B96303096 A+ A+ A+ 92 101 4.77777777777778 A+ 97
    B95303001 A+ A+ A+ 97 86 4.77777777777778 A+ 95
    B95404008 A+ A+ A 98 98 2.88888888888889 A+(遲交, email: 20:46, 7/4/2010) 94
    B95404014 缺交 停修
    B97502058 A-(遲交, 14:00, 4/2) A- A 95 56 2.81481481481481 A 78
    B97504086 A+ A A 100 97 3.59259259259259 A+ 96
    B95601020 A- 缺交 缺交 90 42 2.77777777777778 A+ 63
    B95602039 A A 缺交 62 缺考 缺席 缺交 31
    B96603006 B+ A- B+ 85 94 2.96153846153846 A+ 89
    B98605070 B+ A A- 68 31 2.81481481481481 A 73
    B97605036 A(遲交,email時間: 14:52) A+ A- 74 75 2.81481481481481 A 83
    B95605082 A- A+ A 96 91 2.48148148148148 A 92
    B95605084 A A- A 93 83 2.48148148148148 A 89
    B98703025 A-(遲交, email時間: 11:15, 3/27) A+ A-(遲交, email 1:33 PM, 5/29) 93 65 2.77777777777778 A+ 82
    B98703066 A A A- 88 62 2.77777777777778 A+ 85
    B98703101 A A A- 100 88 4.11538461538461 A+ 94
    B98703103 A A A- 96 96 4.11538461538461 A+ 94
    B98703114 A+ A A- 96 81 4.11538461538461 A+ 92
    B97703071 A- A 缺交 93 86 3.03846153846154 A+ 82
    B95703117 A A+ A+ 98 91 4.32142857142857 A+ 95
    B98704039 A- 停修 20
    B98704087 A A+ A- 71 73 3.59259259259259 A+ 85
    B97704064 A A+ A+ 100 89 3.03846153846154 A+ 94
    B95705030 A+(遲交, 14:49) A+ 缺交 96 101 2.42307692307692 A+ 85
    B95705044 A+ A+ A- 95 87 2.42307692307692 A+ 92
    B98801019 A- A A- 73 60 3 A+ 81
    B98801049 A A- B+ 46 36 3 A+ 71
    B95801027 A A+(遲交, email時間:5/1/2010, 14:19) A (遲交, 14:52) 81 71 3.03846153846154 A+ 82
    B97B01067 B+ A+ B+ (遲交, email 1:40 PM, 5/29) 88 81 2.96153846153846 A+ 86
    B94B02046 A A-(遲交, email時間: 22:58) 缺交 85 缺考 缺席 缺交 33