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

CPSC 231: Fall 2012 Tutorial Schedule

Week No.

Days

Topics to be covered: examples can be found in the course directory (/home/231/examples/tutorials) or via this web page [link]

1 September 9 - 15
No tutorials this week

2

September 16 - 22
  • Lab tours
  • Brief introduction to using the Linux lab computers: common operating system operations, opening a command line/common UNIX commands, using an editor.
  • Creating and running Python programs (input, output, common operations).
  • Quiz #1 (end of tutorial Wednesday or Thursday)

3

September 23 - 29
  • Syntax and runtime errors
  • Program documentation
  • Using SSH to work from home (terminal and file transfer programs)
  • Formatting output with placeholders and escape codes
  • Assignment submission requirements
  • Quiz #2 (end of tutorial Wednesday or Thursday)

4

September 30 - October 6
  • Problem solving simple-moderate level problems
  • Discussion of A2
  • The interactive mode of Python
  • Debugging tips
  • Logic and relational operators
  • Simple branches

5

October 7 - 13 Monday October 8: Thanksgiving Day Holiday, no classes. (No tutorials will be held on Tuesday October 9)
  • Advanced branches
  • Simple counting loops (for and while)
  • Quiz #3 (end of tutorial Wednesday or Thursday)

6

October 14 - 20
  • For and while loops
  • Debugging programs that employ loops
  • Nested loops
  • Making programs more robust: error prevention loops

7

October 21 - 27
  • Discussion of A3
  • Introduction to functions: definition, call, parameter passing, local variables, default parameters, return values.
  • Functions and program style
  • Quiz #4 (end of tutorial Wednesday or Thursday)
8 October 28 - November 3
  • Scope
  • Pre and post conditions
  • Boolean functions
  • Introduction to strings
  • Quiz #5 (end of tutorial Wednesday or Thursday)
9 November 4 - 10
  • Select portions of the midterm exam
  • List basics
  • List operations
  • Passing list parameters
  • More complex lists: 2D, lists containing composite types as elements
  • Tuples
  • Dictionaries
10 November 11 - 17
Monday November 12, Tuesday November 13: no classes
  • Random numbers: fixed seed
  • Advanced list example: an adventure game
  • Quiz #6 (end of tutorial Wednesday or Thursday)
11 November 18 - 24
First tutorials during the week: Monday & Tuesday
  • Files, exceptions, a more complex application of files, exceptions and lists.
Second tutorials during the week: Wednesday & Thursday
  • Open tutorial: TA’s will be available during the tutorial time in the tutorial room to answer questions but no new material will be taught (i.e., it’s like an extra CT time).
12 November 25 - December 1
  • Class and objects
  • Modules
  • List of objects
  • TopHat tracing questions
  • Simple GUI example
  • Quiz #7 (end of tutorial Wednesday or Thursday): classes and objects
13 December 2 - 8
First tutorials during the week: Monday & Tuesday
  • More on classes
  • Recursive examples
Second tutorials during the week: Wednesday & Thursday
  • Open tutorial: TA’s will be available during the tutorial time in the tutorial room to answer questions but no new material will be taught (i.e., it’s like an extra CT time).