課程名稱 |
計算機程式 Computer Programming Language |
開課學期 |
113-1 |
授課對象 |
機械工程學系 |
授課教師 |
林以凡 |
課號 |
ME2009 |
課程識別碼 |
502E10100 |
班次 |
02 |
學分 |
2.0 |
全/半年 |
半年 |
必/選修 |
必修 |
上課時間 |
星期五3,4,5(10:20~13:10) |
上課地點 |
機械系計中 |
備註 |
本課程以英語授課。 總人數上限:55人 |
|
|
課程簡介影片 |
|
核心能力關聯 |
核心能力與課程規劃關聯圖 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
This is an introductory course to computer programming in Python. Introduction to programming basics (what it is and how it works), binary computation, problem-solving methods and algorithm development. Includes procedural and data abstractions, program design, debugging, testing, and documentation. Covers data types, control structures, functions, parameter passing, library functions, arrays, inheritance and object oriented design. |
課程目標 |
The objective of this course is that by the end of the semester, you will have
• understood why Python is a useful scripting language for developers;
• expressed how to design and program Python applications;
• identified how to use lists, tuples, and dictionaries in Python programs;
• described how to identify Python object types;
• demonstrated how to use indexing and slicing to access data in Python programs;
• defined the structure and components of a Python program;
• employed how to write loops and decision statements in Python;
• explained how to write functions and pass arguments in Python;
• illustrated how to build and package Python modules for reusability;
• learned how to read and write files in Python;
• elaborated how to design object-oriented programs with Python classes;
• performed how to use class inheritance in Python for reusability;
• formulated how to use exception handling in Python applications for error handling. |
課程要求 |
|
預期每週課後學習時數 |
|
Office Hours |
|
指定閱讀 |
|
參考書目 |
|
評量方式 (僅供參考) |
No. |
項目 |
百分比 |
說明 |
1. |
Homework |
15% |
Two questions (Easy and Hard) are in each homework assignment. You must submit your homework within TWO weeks through NTU COOL. The deadline is on Thursdays before midnight (11:59 pm). 50% off for the late submission in week three. 0 points for WEEK FOUR and on. *If you copy other people’s work, you will get 0 points. However, collaboration is encouraged. You need to have your own comments in the code. |
2. |
Team Lab |
15% |
There will be two questions from the past weeks and one question from the current week. Laboratory will be based upon the lecture notes. Lab is an opportunity for students to practice skills, apply knowledge, review and build on past learning, and extend learning. The purpose of the assignment will determine whether or not a grade is given and will be clearly articulated to students. Through independent learning tasks, students assume more responsibility for their learning and are given opportunities to apply what they have learned to new situations or experiences. Your team will submit the team report through NTU COOL by the end of each lab session. 20% off for the late submission on the same day (till 11:59pm). 0 points from the next day on. |
3. |
Quizzes |
15% |
(5% each). The quizzes are scheduled on
– Quiz I: September 27 in class. – Quiz II: October 25 in class.
– Quiz III: November 29 in class.
The quiz will be 30 minutes long at the beginning of the class. You will answer some short questions or complete part of the codes on NTU COOL. |
4. |
Midterms |
30% |
(15% each). The mid terms are scheduled on – Mid-term I: October 11 in class.
– Mid-term II: December 06 in class.
The mid-term will be a two-hour computer based exam, closed-book, and closed-notes. No electronics, including calculators, cell phones, or smart watches are allowed. Mid-terms will be used to assess demonstration of the learning objectives. |
5. |
Final Team Project |
25% |
Form a team with AT MOST 4 members. Choose a topic that reflects your interests and what you have learned. You will submit your work and give a 15 minute team presentation on either December 13 or December 20 in the final week. For details, check Final Project Guidelines and Rubrics. |
|
週次 |
日期 |
單元主題 |
第1週 |
September 6th |
Input, Variables, Calculations, Operators, Data Outputs |
第2週 |
September 13th |
Decision Structures and Boolean Logic |
第3週 |
September 20th |
Repetition Structures |
第4週 |
September 27th |
Functions |
第5週 |
October 4th |
Functions and Modules |
第6週 |
October 11th |
Midterm I |
第7週 |
October 18th |
Files |
第8週 |
October 25th |
Recursion and Exceptions |
第9週 |
November 1st |
Lists and Tuples |
第10週 |
November 8th |
Strings |
第11週 |
November 15th |
School's Anniversary Celebration (NO CLASS) |
第12週 |
November 22th |
School Sports Day (NO CLASS) |
第13週 |
November 29th |
Dictionaries and Sets |
第14週 |
December 6th |
Midterm II |
第15週 |
December 13th |
Final Presentation |
第16週 |
December 20th |
Final Presentation |
|