CSC 153 Grinnell College Spring, 2006
 
Computer Science Fundamentals
 

Tentative Schedule of Labs, Supplemental Problems, Due Dates, and Extra Credit Alternatives

This page provides a listing of labs, including relevant readings, lab instructions, and assignment options. This material also is available in calendar form (without Web links) in .dvi format / pdf format / postscript formats.

Lab Index:

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 45
lab # Class Period Topic Reading Lab Due Date Availability for
Extra Credit
1 Mon, Jan 23 Introduction reading lab    
2 Tues, Jan, 24 User-Defined Procedures reading lab Fri, Jan 27  
3 Wed, Jan 25 Scheme Environment reading lab    
4 Fri, Jan 27 Conditionals reading lab Tues, Jan 31  
5 Mon, Jan 30 Simple Lists; Structures reading lab    
6 Tues, Jan 31 Basic Recursion reading lab    
7 Wed, Feb 1 Designing Recursive Procedures   lab    
8 Fri,  Feb 3 Program Correctness and Design reading lab    
 
Note: With the introduction of pre- and post-conditions in Lab 8, all procedures for subsequent labs or supplemental problems must start with a statement of pre- and post-conditions, as well as the procedure name. If no pre-conditions are appropriate, that should be stated formally stated. Of course, every procedure does something, so it must have post-conditions.

A suggested format follows:

(define <procedure-name>
 ;;   Pre-condition:  .......
 ;;  Post-condition:  .......
    (lambda (...

 
Supplemental Problems 1 and 2 Mon, Feb 6
9 Mon, Feb 6 Program Efficiency; Tail Recursion reading lab Wed, Feb 8  
10 Tues, Feb 7 Character Data reading lab    
11 Wed, Feb 8 Encryption; Palindromes reading lab    
12 Fri, Feb 10 Input and Output reading lab    
13 Mon, Feb 13 Procedures: Parameters, MAP, Append, Eval reading lab    
14 Tues, Feb 14 Variables and Values reading lab   Extra Credit if submitted by Tues, Feb 28
15 Wed, Feb 15 Local Procedures   lab Mon, Feb 20  
Supplemental Problem 3 Fri, Feb 17
16 Fri, Feb 17 Iteration reading lab    
17 Mon, Feb 20 Sorting reading lab Mon, Feb 27  
18 Tues, Feb 21 Higher-Order Procedures reading lab Tues, Feb 28  
Wed, Feb 22
19 Feb, Feb 24 Sorting and Mutation reading lab    
20 Mon, Feb 27 Files reading lab    
21 Tues, Feb 28 File Processing reading lab    
Wed, Mar 1 Test 1 covers 1-19      
21 Fri, Mar 3 File Processing, Continued reading lab    
22 Mon, Mar 6 Procedures of Variable Arity reading lab    
23 Mon, Mar 6 Anatomy of an Expert System   lab   Extra Credit if submitted by Tues, Apr. 4
24 Tues, Mar 7 HTML and CGI reading lab    
25 Wed, Mar 8 Project: CGI Programming reading lab Tues, Mar 14  
Supplemental Problem 4 or 5 Wed, Mar 8
25 Fri, Mar 10 Project: CGI Programming reading lab Tues, Mar 14  
26 Mon, Mar 13 Abstract Data Types reading lab    
27 Mon, Mar 13 Vectors   lab   Extra Credit if submitted by Mon, Apr 11
28 Tues, Mar 14 Object-Oriented Programming reading lab    
29 Tues, Mar 14 Objects and Classes   lab   Extra Credit if submitted by Tues, Apr 12
30 Wed, Mar 15 Object-Oriented Design reading lab    
31 Fri, Mar 16 More OO Design reading lab    
Mon, Mar 20 Spring Break
Tues, Mar 21 Spring Break
Wed, Mar 22 Spring Break
Fri, Mar 24 Spring Break
Mon, Mar 27 Spring Break
Tues, Mar 28 Spring Break
Wed, Mar 29 Spring Break
Fri, Mar 31 Spring Break
32 Mon, Apr 3 Introduction to Java   lab    
Tues, Apr 4
33 Wed, Apr 5 Elementary Java Notes reading lab    
34 Fri, Apr 7 Building a Simple Class   lab    
Supplemental Problem 6 Mon, Apr 10
35 Mon, Apr 10 Problem Solving in Java reading lab Fri, Apr 14  
Tues, Apr 11
36 Wed, Apr 12 Iteration and Arrays reading lab    
37 Fri, Apr 14 Searching/Efficiency   lab Tues, Apr 18  
  Mon, Apr 17 Hash Tables; Inheritance        
38 Tues, Apr 18 Hash Tables; Inheritance reading lab   Extra credit if submitted by Tues, May 2
39 Wed, Apr 19 A Class Roster Example   lab    
  Fri, Apr 21 Test 2 Covers 1-38      
Mon, Apr 24 Algorithmic Analysis        
40 Tues, Apr 25 Analysis of Algorithms reading lab   Extra credit if submitted by Tues, May 9
41 Wed, Apr 26 Sorting Lists and Vectors reading lab Mon, May 1  
Fri, Apr 28 More Sorting
42 Mon, May 1 Generalization; Exceptions reading lab Wed, May 3  
Tues, May 2 Exceptions, Continued
43 Wed, May 3 Lists in Java reading lab   Extra credit option
44 Fri, May 5 Trees/Recursive Definition reading lab Wed, May 10  
Supplemental Problem 7 Mon, May 8
44 Mon, May 8 BSTs in Java reading lab Wed, May 10  
45 Tues, May 9 More Binary Search Trees reading lab   Extra credit option
Wed, May 10 Object-Oriented Design        
Fri, May 12 Semester
Wrap UP
       

created 8 January 2005
last revised 12 May 2006
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.