學年學期 Academic Year / Semester | 105學年度第2學期 | Spring Semester, 2017 | ||||
科目代號 Course Code | 207047001 | |||||
開課單位 Course Department | 地一土測 | Freshman Class of Department of Land Economics(Measurement & Information Section) | ||||
課程名稱 Course Name | (中 Ch.)計算機程式設計 | (英 Eng.)Computer Programming | ||||
授課教師 Instructor | 詹進發 | JAN JIHN-FA | ||||
職稱 Title | 專任副教授 | Associate Professor | ||||
選課人數 Number Registered | 36人 | |||||
學分數 No. of Credits | 3.0 | |||||
修別 Type of Credit | 必修 | Required | ||||
先修科目 Prerequisite(s) | ||||||
上課時間 Session | 三234 | wed09-12 | ||||
教室 Location | 綜合270610 | 270610 General Building of Colleges(270610) | ||||
點閱核心能力分析圖與授課方式比例圖 |
本課程介紹程式設計之基本概念,透過Python程式語言讓學生了解如何運用程式設計的技術解決實務的問題。
完成本課程所有教材內容後,學生能夠達成以下學習成效:
1. 能了解Python之語法結構,撰寫完整的程式,有除錯的能力。
2. 具備邏輯思考能力,可以分析問題的解決方法,透過程式以解決問題。
3. 能運用演算法與資料結構之技術設計有效率的程式。
4. 具備搜尋網路上軟體資源的能力。
5. 養成自主與終身學習的態度。
6. 具有閱讀英文教材的能力。
1.以下為本學期課程之預定進度,將視實際情況調整課程內容與進度。
2.本課程正課於課堂講授三小時,另安排每週一個小時(預定在每週星期四中午12:10-13:10),由助教講解軟體操作,以及作業、考試的問題,以期能達到最佳的學習效果。
3.TA課將針對同學有疑問處及作業、考試進行講解及討論,並讓同學們互相觀摩彼此的程式,且加入一些有趣的範例程式,增加同學撰寫程式的興趣。
4.本課程除教師在課堂上講解之外,亦將使用大量網路上的輔助教材,例如:MOOCS (磨課師)、Coursera、Udacity、YouTube等,以培養同學自主學習網路上的教材之能力。
週次 課程內容與指定閱讀 教學活動與課前、課後作業 學生學習投入時間
(含課堂教學時數)
1 Introduction and overview 課程與軟體介紹、網頁撰寫 3+4
2 Variables, expressions and statements, software installation Python基本語法結構、軟體安裝、作業練習 3+5
3 Functions Function設計、作業練習 3+6
4 Case Study Interface設計、作業練習 3+6
5 Conditionals and recursion Conditionals and recursion用法、作業練習 3+6
6 Fruitful functions Fruitful Function設計、作業練習 3+6
7 Iteration Iteration設計、作業練習 3+6
8 First Midterm Exam 第一次期中考、作業練習 3+6
9 Strings, word play Strings用法、作業練習 3+6
10 Lists Lists用法、作業練習 3+6
11 Dictionaries Dictionaries用法、作業練習 3+6
12 Tuples Tuples用法、作業練習 3+6
13 Second Midterm Exam 第二次期中考、作業練習 3+6
14 Case study: data structure selection Case study、作業練習 3+6
15 Files Files用法、作業練習 3+6
16 Classes and Objects Classes用法、作業練習 3+6
17 Case study: GUI GUI設計、作業練習 3+6
18 Final Exam 期末考 3
1. 兩次期中考各占:20%;期末考:30%;平時成績:30%(含作業、4-8次不定期小考、上課出席及參與等)。
2. TA課將針對同學有疑問處及作業進行講解及討論,並讓同學們互相觀摩彼此的程式,且加入一些有趣的範例程式,增加同學撰寫程式的興趣。TA課除了講解作業、測驗和帶領同學上機練習之外,在考試前有模擬測驗題,可以讓同學們瞭解考試的準備方向,增進學習的成效。參加TA課亦屬於課程參與的一部分,為學期末綜合考量是否加分的考慮因子之一。
3. 測驗的方式分兩種:(1)筆試:測驗方式為簡答題與撰寫程式碼,測驗內容為課堂上講解之程式設計的重要觀念,以及範例程式與作業練習的相關主題。(2)上機測驗:與上課講解及作業練習相關的主題之程式設計。
4. 測驗的重點:(1)Python程式設計的基本語法;(2)程式設計的邏輯觀念;(3)對於問題的分析能力;(4)解題的演算法;(5)自主學習的能力;(6)對於課程內容的瞭解程度。
5. 測驗藍圖:程式設計的學習必須循序漸進,按照每週的進度學習,充分了解教材內容便能將基礎打好,測驗的方式綜合幾個面向:(1)記憶(10%):Python專有術語及程式的語法;(2)理解(30%):對於課程內容與程式範例的理解;(3)獨立思考(50%):綜合Python語言學習與問題分析的能力、演算法設計、程式設計技巧等之學習成效;(4)應用(10%):舉一反三的能力,能將課程中所學到的技術應用於解決實務問題。
星期二:8:00-9:00,綜合院館271647
星期三:08:10-09:10,綜合院館270610
地政系研究所周子凱(信箱:105257029@nccu.edu.tw),負責講解作業與批改試卷,以及解答選課同學的問題。
Downey, A., 2015. Think Python 2e: How to Think Like a Computer Scientist, Green Tea Press. http://greenteapress.com/wp/think-python-2e/
https://www.tenlong.com.tw/items/1491939362?item_id=1009843