Computer Science 153 is a laboratory-based course that uses collaborative
learning extensively. The following list outlines each laboratory exercise
for the course.
Laboratory |
Exercise | Title and Description |
Lab. 1 | Getting Started: |
| |
Lab. 2
| User-Defined Procedures:
| Due Friday, January 28
|
| |
Lab. 3
| Simple Scheme Predicates : |
| |
Lab. 4
| Conditional Execution in Scheme:
| Due Tuesday, February 1
|
| |
Lab. 5
| Simple Lists: |
| |
Lab. 6
| Recursion: The Basics: |
| |
Lab. 7
| Designing Recursive Procedures: |
| |
Lab. 8
| Program Correctness and Program Design:
|
| |
Lab. 9
| Refining Recursive Procedures:
| Due Wednesday, February 9
|
| |
Lab. 10
| Characters: |
| |
Lab. 11
| Strings:
|
| |
Lab. 12
| Input/Output: |
| |
Lab. 13
| Procedures as First-Class Citizens:
|
| |
Lab. 14
| Variables and Scope: |
| |
Lab. 15
| More Recursion:
| Due Tuesday, February 22
|
| |
Lab. 16
| Iteration:
|
| |
Lab. 17
| Files: |
| |
Lab. 18
| File Processing:
| Due Monday, February 28
|
| |
Lab. 19
| Sorting:
|
| |
Lab. 20
| Sorting and Mutation: |
| |
Lab. 21
| Procedures of Variable arity: |
| |
Lab. 22
| Placing Students Using An Expert System:
|
| |
Lab. 23
| Higher-Order Procedures:
| Due: Monday, March 6
|
| |
Lab. 24
| And Introduction to the World Wide Web and CGI
Programming: |
| |
Lab. 25
| CGI and the World Wide Web:
| Due Tuesday, March 14
|
| |
Lab. 26
| Vectors: |
| |
Lab. 27
| Abstract Data Types: |
| |
Lab. 28
| Stacks:
| Due Friday, March 17
|
| |
Lab. 29
| Queues |
| |
Lab. 30
| Object-Oriented Programming:
|
| |
Lab. 31
| Object-Oriented Design: |
| |
Lab. 32
| Object-Oriented Design: |
| |
Lab. 33
| Introduction to Java: |
| |
Lab. 34
| Objects and Methods in Java:
| Due Friday, April 14
|
| |
Lab. 35
| Building Classes: |
| |
Lab. 36
| Problem Solving in Java, Part I :
| Due Friday, April 21
|
| |
Lab. 37
| Iteration and Arrays:
|
| |
Lab. 38
| Arrays and Hash Tables: |
| |
Lab. 39
| Searching: |
| |
Lab. 40
| Analysis of Algorithms: |
| |
Lab. 41
| Sorting Lists and Arrays:
| Optional, Unrevised from the Past
|
| |
Lab. 42
| Inheritance: |
| |
Lab. 43
| Generalization and Exceptions:
| Due Monday, May 8
|
| |
Lab. 44
| Lists in Java:
|
| |
Lab. 45
| Trees and Recursive Definition:
| Due Friday, May 12
|
| |
Lab. 46
| Survey on CS1 courses |
|