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

Lab Schedule

Week Date Topics to be covered Relevant Readings
1 Sept 16 - 20 Assignment 1,
Lab Orientation,
Unix: Part I
Sobell, Chapter 2
2 Sept 23 - 27 Non-decimal based number systems,
Non-decimal math,
Complements,
Logic,
(Each of these topics will be covered as time allows)
Leestma and Nyhoff, Section 1.2
3 Sept 30 - Oct 4 Assignment 2,
Creating Pascal programs,
Unix: File permissions,
Emacs keyboard commands
Sobell, pp. 88 - 91 (Unix permissions), Chapter 9 (Emacs)
4 Oct 7 - 11 Assignment 3,
Electronic submission of assignments, (submit and showstuff), Boolean expressions
Decision making in Pascal
Leestma and Nyhoff, pp. 118 - 121,    
p. 130, pp. 134 - 134, pp. 140 - 141  
5 Oct 14 - 18 Repetition in Pascal  Leestma and Nyhoff pp. 145 - 146,  pp. 148 - 149)
6 Oct 21 - 25 Assignment 4,
Problem Decomposition (functions and procedures in Pascal)
 
7 Oct 28 - Nov 1 Introduction to  homogeneous composite types (one-dimensional arrays) Leestma and Nyhoff pp. 426 - 427

Unix: /home/231/lab/week7 (examples)

8 Nov 4 - 8 Assignment  5,
Files in Pascal
Leestma and Nyhoff p. 278, pp. 288 - 289
9 Nov 11 - 15  Homogeneous composite types: Part II (multi-dimensional arrays)  
10 Nov 18 - 22 Assignment 6,
Records in Pascal,
Arrays of Records 
Leestma and Nyhoff pp. 584 - 585, pp. 592 - 593.
11 Nov 25 - 29 Assignment 7, 
Sorting,
Pointers
 
12 Dec 2 - 6 Linked lists Leestma and Nyhoff pp. 766 - 774, 778 - 783