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

CPSC 231: Winter 2011 Tutorial Schedule

You can find the source code for the programming examples to be covered in tutorial in UNIX in the directory: /home/231/tutorials

Week No.

Days

Topics to be covered

1

Jan 9 – 15
  • No tutorials this week

2

Jan 16 – 22
  • Lab tours
  • Introduction to Computer Science accounts
  • Using a text editor (menu and keyboard commands)
  • UNIX orientation
  • Overview of Assignment 1  

3

Jan 23 - 29
  • Creating programs
  • Input and output
  • Formatting output
  • Mathematical operators
  • Common syntax errors
  • Working from home
  • Review of the assignment submission process, academic misconduct
  • How to submit your assignments electronically using 'submit'
  • Hardware calculations

4

Jan 30 – Feb 5
  • Overview of Assignment 2
  • Relational operators
  • Branching (if, if-else, if-elif-else)
  • Logic and branches
  • Branching and error checking
  • Debugging a program that employs branches

5

Feb 6 - 12
  • Pre vs. post test loops
  • For and while loops
  • Sentinel controlled loops
  • Logical operators and loops
  • Nested loops
  • Debugging a program that employs looping

6

Feb 13 – 19
  • Overview of Assignment 3
  • Defining and calling functions
  • Parameter passing and return values
  • Default parameters
  • Local vs. global variables
7 Feb 20 - 26
READING WEEK: NO CLASSES
8 Feb 27 – Mar 5
  • Introduction to QuickDraw
9 Mar 6 - 12
First tutorial (Monday or Tuesday):
  • Open tutorial: TA will be available for help in the lab but no new material will be taught.
Second tutorial (Wednesday or Thursday):
  • Functions: program design and testing
  • Function pre and post conditions
  • Introduction to lists
10 Mar 13 – 19
  • Random number generation
  • More on lists: multiple dimensions, passing as parameters
  • Example problem using lists: the fountain of fullfillment
11 Mar 20 – 26
  • Open tutorial: TA will be available for help in the lab but no new material will be taught.
12 Mar 27 – April 2
  • Classes and objects (defining classes, instantiating objects, accessing and changing attributes).
  •  Splitting a program into modules
  • Simple file input and output
13 April 3 – April 9
  • Open tutorials: TA will be available for help in the lab but no new material will be taught.
14 April 10 – 16
First tutorial (Monday or Tuesday):
  • Introduction to the recursion
  • Class methods and modules
Second tutorial (Wednesday or Thursday):
  • Open tutorial: TA will be available for help in the lab but no new material will be taught.