CSC 270
Programming Assignments
The following assignments are numbered for convenience, and the
higher-numbered ones are generally more complicated than the
lower-numbered ones, but you are not required to do them in
this order; in fact, you're not required to do all of them at all.
For many of the following
assignments I've described how to do them in several different
languages. In addition, for Scheme, any of the homework assignments in
How to Design Programs are fair game for
demonstrating your ability. For Prolog, any of the exercises in the
Amzi tutorial should work.
- HW1
- Simple variables, arithmetic and I/O
- HW2
- Arrays and functions; possibly pointers and memory management
- HW3
- Sorting and pointers/references
- HW3.5
- A Pair class and common operations on it
(This is numbered 3.5 because it's more complex than homework 3 but
simpler than homework 4, and I thought of it later so I inserted it in
between.)
- HW4
- Classes, lists of strings, other sorting algorithms
- HW5
- Classes, subclasses; chess game
- HW6
- Set operations: intersection, union, difference, Cartesian product,
...
- HW7
- Experiments with higher-order functions in various languages
- HW8
- Prolog: Six Degrees of Kevin Bacon
- Exercises in the Amzi Prolog tutorial
- chap. 5, problems 4-11 (genealogy)
- chap. 5, problems 15-17 (expert system for identifying pets)
- chap. 7, problem 8 (enhancements to the expert system)
- chap. 8, problems 3-4 (enhancements to the genealogy program)
- chap. 11, problems 1-3 (on lists)
- chap. 11, problem 8 (menu-based user interaction)
- chap. 13, problem 3 (enhancement to the expert system)
- chap. 14, problem 7 (enhancement to the expert system)
More to come!
Last modified:
Stephen Bloch / sbloch@adelphi.edu