Skip to content
Dr. İsmail Hakkı KINALIOĞLU

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:

  1. Breaks a problem into steps and expresses it as a flowchart.
  2. Writes Python programs that use conditionals and loops.
  3. Uses built-in data structures such as lists, dictionaries and sets appropriately.
  4. 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. 1
    Week 1 Introduction to programming, algorithms and flowcharts
  2. 2
    Week 2 Installing Python, the development environment and a first program
  3. 3
    Week 3 Variables, data types and operators
  4. 4
    Week 4 Input/output and type conversion
  5. 5
    Week 5 Conditional statements: if, elif, else
  6. 6
    Week 6 Loops: for and while
  7. 7
    Week 7 Nested loops and loop control
  8. 8
    Week 8 Exam Midterm exam
  9. 9
    Week 9 Strings and text processing
  10. 10
    Week 10 Lists and tuples
  11. 11
    Week 11 Dictionaries and sets
  12. 12
    Week 12 Functions and parameters
  13. 13
    Week 13 Variable scope and recursion
  14. 14
    Week 14 Exception handling and debugging
  15. 15
    Week 15 Applied project and review
  16. 16
    Week 16 Exam Final exam