NTU Course
NewsHelpOverview

Computer Programming Language

Offered in 112-2
  • Notes
    The course is conducted in English。
  • NTU Enrollment Status

    Enrolled
    0/53
    Other Depts
    0/0
    Remaining
    0
    Registered
    0
  • Course Description
    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.
  • Course Objective
    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 (if time is allowed); ‧ performed how to use class inheritance in Python for reusability (if time is allowed);; ‧ formulated how to use exception handling in Python applications for error handling.
  • Course Requirement
  • Expected weekly study hours after class
  • Office Hour
  • Designated Reading
  • References
  • Grading
    15%

    Homework

    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 Wednesdays before midnight (11:59pm). 50% off for the late submission in week three. 0 points for week four and up.

    15%

    Team Lab

    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 end of each lab session. 20% off for the late submission on the same day (till 11:59pm). 0 points from the next day.

    15%

    Quiz

    5% each). The quizzes are scheduled on – Quiz I: March 14 in class. – Quiz II: April 18 in class. – Quiz III: May 16 in class. The quiz will be a 30-minute long test in the beginning of the class. You will answer some short questions or complete part of the codes on NTU COOL.

    30%

    Midterms

    (15% each). The mid terms are scheduled on – Mid-term I: March 28 in class. – Mid-term II: May 23 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 access demonstration of the learning objectives.

    25%

    Final Team Project

    Form a team with AT MOST 3 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 May 30 and June 06. For details, check Final Project Guidelines and Rubrics.

    0%

    Class Participation

    bonus 2%. Attend the class and have discussions with your classmates/group for some class exercises. Demonstrate your code and explain your thought process in class. Also be active in class by asking questions, solving the class exercises on the blackboard.

  • Adjustment methods for students
  • Course Schedule
    02/22Week 1Input, Variables, Calculations, Operators, Data Outputs
    02/29Week 2Decision Structures and Boolean Logic
    03/07Week 3Repetition Structures
    03/14Week 4Functions
    03/21Week 5Functions and Modules
    03/28Week 6Mid-term I
    04/04Week 7Holiday
    04/11Week 8Files
    04/18Week 9Recursion and Exceptions
    04/25Week 10Lists and Tuples
    05/02Week 11Strings
    05/09Week 12Dictionaries and Sets
    05/16Week 13Numpy and Matplotlib
    05/23Week 14Mid-term II
    05/30Week 15Final Presentation
    06/06Week 16Final Presentation