Lecture notes for the Introduction to Computer Science I by James Tam Return to the course web page

CPSC 231: Fall 2011 Tutorial Schedule

Week No.

Days

Topics to be covered

1 September 11 - 17
No tutorials this week

2

September 18 - 24
  • CPSC lab and computing environment orientation
  • Creating and running Python programs
  • Input and output
  • Common operators
  • Variables
  • Type conversions

 

Tutorial exercise 1 due

3

September 25 - October 1
  • Constants
  • Program documentation
  • Basic UNIX commands
  • Using the electronic submission system 'submit'
  • Working at home using SSH
  • Basic Emacs editor commands

Tutorial exercise 2 due

4

October 2 - 8
  • Defining and calling functions
  • Declaring local variables
  • Parameter passing
  • Default parameters
  • Return values

Assignment 1 due

5

October 9 - 15 First tutorial:
  • Monday: no class because of Thanksgiving holiday.
  • Tuesday: open tutorial, TA will available in the lab to answer questions but no new material will be taught.

Second tutorial:

  • Discussion of A2
  • More on decomposition
  • Scope: local vs. global variables and constants
  • Answering questions about the third tutorial exercise
  • Demo time for the third tutorial exercise

Tutorial exercise 3 due

6

October 16 - 22
  • Debugging: rooting out worrisome syntax and logic errors
  • Relational operators (review from lecture)
  • Logical expression
  • Branching (if, if-else, if-elif-else)

Assignment 2 due

7

October 23 - 29

First tutorial (example programs can be found under /home/231/tutorials/oct23_oct29):

  • Discussion of A3 & Tutorial exercise 4
  • Branching: exercises for finding logic errors and writing branching code

Second tutorial:

  • Introduction to looping: for, while, sentinel-controlled, pre vs. post test

Tutorial exercise 4 due

8 October 30 - November 5
  • Loops and some debugging tips
  • Nested loops
  • Style: writing clear Boolean expressions and avoiding overly deep nesting

 

Assignment 3 due

9 November 6 - 12
First tutorial, Monday, Tuesday (example programs can be found under /home/231/tutorials/nov6_nov12):
  • Discussion of Assignment 4 and the tutorial exercise
  • Exceptions: ValueError and KeyError

Second tutorial, Wednesday (open tutorial); Thursday (no tutorial due to Reading Day)

Tutorial exercise 5 due

10 November 13 - 19
First tutorial, Monday, Tuesday:
  • Discussion of testing required for A4

Second tutorial, Wednesday, Thursday (open tutorial, TA available in lab for help but no new material will be taught)

Assignment 4 due

11 November 20 - 26
  • Discussion of Assignment 5
  • Discussion of Tutorial Exercise 6

Tutorial exercise 6 due

12 November 27 - December 3
  • Discussion of the bonus assignment
  • Discussion of Tutorial Exercise 7
  • Classes and objects (focus on concepts related to A5 e.g., __str__(), __eq__() methods).
  • File input and output

Tutorial exercise 7 due

13 December 4 - 10
First tutorial: Monday, Tuesday (example program can be found under /home/231/tutorials/dec4_10/lifepath/)
  • Creating simple graphical user interfaces using Tkinter in Python (solution to A3)

Second tutorial: Wednesday, Thursday

  • Open tutorial: TA's will be available to answer questions but no new material will be taught.

Assignment 5 & The bonus assignment due