CMPT 120 Lecture Notes

  1. Course Introduction [“Course Introduction” slides]
    1. This Course [This Course slides]
    2. Placement Test [Placement Test slides]
    3. Grading [Grading slides]
    4. Lectures [Lectures slides]
    5. Exercises [Exercises slides]
    6. Assignments [Assignments slides]
    7. Quizzes/Exams [Quizzes/Exams slides]
    8. References [References slides]
    9. Expectations [Expectations slides]
    10. Computer Requirements [Computer Requirements slides]
    11. My Course Plan [My Course Plan slides]
    12. Topics [Topics slides]
  2. Computing Science Basics [“Computing Science Basics” slides]
    1. Algorithms [Algorithms slides]
    2. Data Structures [Data Structures slides]
    3. Computer Science [Computer Science slides]
    4. Expressing Algorithms [Expressing Algorithms slides]
  3. Programming Basics [“Programming Basics” slides]
    1. Python [Python slides]
    2. Starting With Python [Starting With Python slides]
    3. Doing Calculations [Doing Calculations slides]
    4. Functions [Functions slides]
    5. Storing Information [Storing Information slides]
    6. Aside: Interactive Shell [Aside: Interactive Shell slides]
    7. Types [Types slides]
    8. Type Conversion [Type Conversion slides]
    9. User Input [User Input slides]
  4. Representing Information [“Representing Information” slides]
    1. Bits and Bytes [Bits and Bytes slides]
    2. Integers [Integers slides]
    3. Adding Integers [Adding Integers slides]
    4. Signed Integers [Signed Integers slides]
    5. Floating Point [Floating Point slides]
    6. Characters & Strings [Characters & Strings slides]
  5. Control Structures [“Control Structures” slides]
    1. Making Decisions: if [Making Decisions: if slides]
    2. Conditions [Conditions slides]
    3. If/Else [If/Else slides]
    4. If/Elif/Else [If/Elif/Else slides]
    5. Intersecting Lines [Intersecting Lines slides]
    6. Repetition [Repetition slides]
    7. The for Loop [The for Loop slides]
    8. The while Loop [The while Loop slides]
    9. The Guessing Game [The Guessing Game slides]
    10. Example: special numbers [Example: special numbers slides]
    11. Running Time [Running Time slides]
  6. Functions and Decomposition [“Functions and Decomposition” slides]
    1. Defining Functions [Defining Functions slides]
    2. Calling Functions [Calling Functions slides]
    3. Using Functions [Using Functions slides]
    4. Variable Scope [Variable Scope slides]
    5. Debugging [Debugging slides]
    6. Coding Style [Coding Style slides]
    7. Modules [Modules slides]
    8. Objects [Objects slides]
    9. Pillow [Pillow slides]
  7. Data Structures [“Data Structures” slides]
    1. Tuples [Tuples slides]
    2. Lists [Lists slides]
  8. Algorithms
  9. Working with Files

Course home page.

Study Guide.

Schedule

Week Deliverables (*) Lecture Hour Lecture Date First Slide
1 1 May 6
2 May 8
3 May 10
2 Exer 1 4 May 13
5 May 15
6 May 17
3 Exer 2 7 May 20
8 May 22
9 May 24
4 Exer 3 10 May 27
11 May 29
12 May 31
5 Exer 4, Assign 1 13 Jun 3
14 Jun 5
15 Jun 7
6 Exer 5, Quiz 1 16 Jun 10
17 Jun 12
18 Jun 14
7 Exer 6 19 Jun 17
20 Jun 19
21 Jun 21
8 Exer 7, Assign 2 22 Jun 24
23 Jun 26
24 Jun 28
9 Exer 8 25 Jul 1
26 Jul 3
27 Jul 5
10 Exer 9, Quiz 2 28 Jul 8
29 Jul 10
30 Jul 12
11 Exer 10, Assign 3 31 Jul 15
32 Jul 17
33 Jul 19
12 Exer 11 34 Jul 22
35 Jul 24
36 Jul 26
13 Exer 12, Assign 4 37 Jul 29
38 Jul 31
39 Aug 2
14 Final Exam

* Check CourSys for the actual due dates and times.

Quiz instruction slide.