CSC 161 Grinnell College Spring, 2010
 
Imperative Problem Solving and Data Structures
 

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 will be available in calendar form (without Web links) in .dvi format / pdf format / postscript formats.

The following class schedule will evolve through the semester.

Lab Index:  January:   1, 2
February:   3, 4, 5, 6, 7, 8, 9, 10, 11
March:   12, 13, 14, 15, 16, 17, 18
April:   19, 20, 21 22, 23, 24, 25, 26, 27, 28, 29
May:   30, 31, 32, 33


lab # Class Period Topic Reading Lab Due Date Availability
for
Extra
Credit
  Mon, Jan 25 Introduction Class Discussion  
1 Tues, Jan 26 Linux Basics (commands, file permissions) reading lab    
2 Wed, Jan 27 lab    
  Fri, Jan 29 Introduction to C Class Discussion  
3 Mon, Feb 1 Introduction to C (and emacs) reading lab    
4 Tues, Feb 2 Input and Output in C reading lab Fri, Feb 5  
  Wed, Feb 3 Conditionals in C Class Discussion  
5 Fri, Feb 5 Conditionals in C (and VIM) reading lab Tues, Feb 9  
  Mon, Feb 8 Loops in C Class Discussion  
6 Tues, Feb 9 Loops in C reading lab Mon, Feb 15  
Wed, Feb 10
  Fri, Feb 12 Loops and Testing Class Discussion  
7 Mon, Feb 15 Testing C Programs reading lab   Extra Credit if submitted by Mon, Mar 1
 
Note: With the introduction of pre- and post-conditions in Lab 7, 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:

   <return-type> <function-name> (<parameters>) 
   /*   Pre-conditions:  .......
    *  Post-conditions:  .......
    */
  Tues, Feb 16 Supplemental Problem 1 or 2   Tues, Feb 16 Do both problems for extra credit
  Tues, Feb 16 Representation of Numbers Class Discussion  
8 Wed, Feb 17 Representation of Integers reading (by Christine Wright and Mr. Rebelsky) lab    
  Fri, Feb 19 Test 1 covers labs 1-7
  Mon, Feb 22 Floating Point Numbers
Numerical Errors
Functions and Parameters
Class Discussion  
9 Tues, Feb 23 Floating Point Numbers reading (by Mr. Stone) lab    
10 Wed, Feb 24 Numerical Errors reading lab   Extra Credit if submitted by Wed, Mar 10
11 Fri, Feb 26 Functions and Parameters reading lab Tues, Mar 2  
  Mon, Mar 1 Arrays Class Discussion  
12 Tues, Mar 2 Arrays reading lab    
13 Tues, Mar 2 Gnu's DDD Debugger (Optional) reading lab   Extra Credit if submitted by Mon, Mar 16
14 Wed, Mar 3 Loop Invariants reading lab   Extra Credit if submitted by Tues, Mar 17
  Fri, Mar 5 Pictorial Loop Invariants Class Discussion  
15 Mon, Mar 8 More Pictorial Loop Invariants reading lab, part A   Extra Credit if submitted by Tues, Apr 6
lab, part B Tues, Mar 16  
  Tues, Mar 9 Characters and Strings Class Discussion  
  Wed, Mar 10 Test 2 covers labs 1-15
16 Fri, Mar 12 Characters and Strings reading lab   Extra Credit if submitted by Fri, Apr 9
17 Mon, Mar 15 Pointers, Arrays, and Strings reading Class Discussion  
  Tues, Mar 16 Machine-level Operations and Unions reading lab    
  Wed, Mar 17 Supplemental Problem 3  
  Wed, Mar 17 Files and Buffers Class Discussion  
18 Fri, Mar 19 Files in C reading lab   Extra Credit if submitted by Fri, Apr 16
Mon, Mar 22 Spring Break  
Tue, Mar 23 Spring Break
Wed, Mar 24 Spring Break
Fri, Mar 26 Spring Break
Mon, Mar 29 Spring Break
Tue, Mar 30 Spring Break
Wed, Mar 31 Spring Break
Fri, Apr 2 Spring Break
19 Mon, Apr 5 String Puzzles and Idiosynchracies   lab Wed, Apr 7  
20 Tues, Apr 6 Linux and C reading lab    
  Wed, Apr 7 Command-line Arguments in C Class Discussion  
21 Fri, Apr 9 Command-line Arguments in C reading lab   Extra Credit if submitted by Fri, Apr 23
22 Mon, Apr 12 Structures reading lab    
  Tues, Apr 13 Pointers reading Class Discussion  
  Wed, Apr 14 Supplemental Problem 4   Wed, Apr 14  
23 Wed, Apr 14 More Pointers reading lab   Extra Credit if submitted by Wed, Apr 28
  Fri, Apr 16 Abstract Data Types: Stacks, Queues Class Discussion  
24 Mon, Apr 19 Stacks with Arrays reading lab    
  Tues, Apr 20 Supplemental Problem 5   Tues, Apr 20  
25 Tues, Apr 20 Queues with Arrays reading lab Fri, Apr 23  
  Wed, Apr 21 Lists in C Class Discussion  
26 Fri, Apr 23 Scheme-like Lists in C reading lab    
27 Mon, Apr 26 Still More Lists reading lab   Extra Credit if submitted by Mon, May 10
  Tues, Apr 27 Supplemental Problem 6  
28 Tues, Apr 27 Even More Lists reading lab    
29 Wed, Apr 28 Building Multi-File Programs reading lab    
  Fri, Apr 30 Test 3 Covers 1-28
  Mon, May 3 Alternative Linked Structures Class Discussion  
30 Tues, May 4 Doubly-Linked Lists reading lab Fri, May 7  
31 Wed, May 5 Stacks and Queues with Lists reading lab   Extra Credit if submitted by Fri, May 14
32 Fri, May 7 Queues with Circular Lists reading lab    
  Mon, May 10 Scripts in Linux/Unix Class Discussion  
  Tues, May 11 Supplemental Problem 7   Tues, May 7  
29 Tues, May 11 Building Multi-File Programs, Revisited reading lab Fri, May 14  
33 Wed, May 12 Bash Scripts reading lab   Extra credit if submitted by Fri, May 14
Fri, May 14 Semester Wrap Up Class Discussion; End-of-Course Evaluations

created 25 March 2008
last revised 10 May 2010
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.