Introduction to Computer Science for Majors I James Tam Return to the course web page

CPSC 231: Fall 2011

Index

Term components: [Grades]

Lecture Information (L01, L03: lectures start during the week of September 12)

Day/Time

Tuesday, Thursday 9:30 - 10:45 (L01)

Tuesday, Thursday 14:00 - 15:15 (L03)

Location 

ICT 114 (L01)

ICT 114 (L03)

Contact Information

James Tam

 

Office: ICT707

 

Office hours: Tuesday (11 - 11:50 AM), Thursday (15:30 - 16:20 PM)

 

Email: tamj@cpsc.ucalgary.ca

   
General information Administrative information

Getting started in Computer Science (computer labs, sources of help, working from home etc.)

My schedule (to see when I have fixed commitments and when I have office hours)

Information on the electronic response system (Top Hat Monocle)

 

Tutorial and lab Information (tutorials start during the week of September 19)

Tutorials:

 

L01 tutorials

Date/Time

Location

Tutorial instructor

Contact information

T01 MW: 10:00 - 10:50 MS160 Ali Rahmani arahmani@ucalgary.ca
T02 TRMW: 17:00 - 17:50 MS160 Robin Gonzalez gonzalre@ucalgary.ca
T03 TR 12:00 - 12:50 MS160 Md Moniruzzaman mmoniruz@ucalgary.ca

L03 tutorials

Date/Time

Location

Tutorial instructor

Contact information

T07 MW: 16:00 - 16:50 MS176 Robin Gonzalez gonzalre@ucalgary.ca
T08 TR: 11:00 - 11:50 MS160 Md Moniruzzaman mmoniruz@ucalgary.ca
T09 MW 9:00 - 9:50 MS176 Ali Rahmani arahmani@ucalgary.ca

Lab (Continuous tutorials):

 

Course topics and notes for lectures

Topic #

Topic

Beginning Python by James Payne: to view the free online document.

1

Introduction to the course

[Acrobat notes] [PowerPoint notes]

 

2

Introduction to computer programming

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 1 & 2

3

Functions and problem decomposition

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 5

4

Branching

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 4: pages 49 - 59

5

Loops

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 4: pages 60 - 64

6

Recursion

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 8: page 133 (actually an application of recursion in file systems)

7

Composite types

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 3

8

Functions: Part 2

[Acrobat notes] [PowerPoint notes] [Example programs]

 

9

Classes and objects

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 6, 10

10

File input and output

[Acrobat notes] [PowerPoint notes] [Example programs]

Chapter 8

11

Computer history (if there is time)

[Acrobat notes] [PowerPoint notes]

 

12

Introduction to Computer Science (if there is time)

[Acrobat notes] [PowerPoint notes]

 

 

Design principles: presentation of visual information (not on exam but to help with the design of the bonus assignment)

[Acrobat notes] [PowerPoint notes]

 

Assignments, exercises and exams

Information about the tutorial exercises worth 10%

Information about the marking of assignments: Mapping of assignment scores to letter grades

Assignment submission guidelines

Information about the electronic submission mechanism

Academic misconduct vs. collaboration

Practice assignments: They won't be for credit but they're extra problems that you can try in order to improve your programming and problem solving skills

Assignment 1 (programming intro): Due October 7 at 4 PM, worth 6%

 

Marking key

Assignment 2 (functions): Due October 21 at 4 PM, worth 6%

 

Marking key

Assignment 3 (loops and branches): Due November 4 at 4 PM, worth 6%

 

Marking key

Assignment 4 (strings, exceptions, testing): Due November 18 at 4 PM, worth 6%

 

Marking key

Assignment 5 (files, list, modules, classes): Due December 9 at 4 PM, worth 6%

 

Marking key

Bonus Assignment: Due December 9 at 4 PM, worth 6%

 

Marking key

Midterm exam worth 25%, common out of class midterm Thursday October 27 in ST140 & 141 at 6 PM. [Exam information]

Final exam: worth 35%, to be scheduled by the Office of the Registrar. [Exam information]