Computer Programming I
An introduction to programming that starts with algorithmic thinking and covers variables, control flow, data structures and functions in Python.
- Semester
- Fall semester
- Level
- Undergraduate
- Credits
- 2+2
- Length
- 16 weeks
Course aims
To enable students to turn a problem into an algorithm and implement it as readable, tested Python code.
Learning outcomes
Students who complete this course will be able to:
- Breaks a problem into steps and expresses it as a flowchart.
- Writes Python programs that use conditionals and loops.
- Uses built-in data structures such as lists, dictionaries and sets appropriately.
- Organises code into functions and handles and debugs errors.
Assessment
| Component | Weight |
|---|---|
| Midterm exam (week 8) | 40% |
| Final exam (week 16) | 60% |
Resources
- Eric Matthes, Python Crash Course, No Starch Press
- Al Sweigart, Automate the Boring Stuff with Python, No Starch Press
- Python resmî belgeleri / Official Python documentation: docs.python.org
Weekly syllabus
-
1
Week 1 Introduction to programming, algorithms and flowcharts
-
2
Week 2 Installing Python, the development environment and a first program
-
3
Week 3 Variables, data types and operators
-
4
Week 4 Input/output and type conversion
-
5
Week 5 Conditional statements: if, elif, else
-
6
Week 6 Loops: for and while
-
7
Week 7 Nested loops and loop control
-
8
Week 8 Exam Midterm exam
-
9
Week 9 Strings and text processing
-
10
Week 10 Lists and tuples
-
11
Week 11 Dictionaries and sets
-
12
Week 12 Functions and parameters
-
13
Week 13 Variable scope and recursion
-
14
Week 14 Exception handling and debugging
-
15
Week 15 Applied project and review
-
16
Week 16 Exam Final exam