Harvey Mudd College
Computer Science 60
Principles of Computer Science
Assignments -- Spring 2002
Assignments
Each of these assignments is the preliminary ("Prelim") specification.
When a final write-up is available (usually 1 week before the
due date), it will be changed to "Final"). Solutions will be linked
here once available.
|
Assignment 0 (Due Fri, Jan 25 - Final)
|
(Solutions)
|
|
Section 1 (MW): Assignment 1
(Sample graphs)
(Due Fri, Feb 1 - Final)
|
(Solutions)
|
|
Section 2 (TTh): Assignment 1 (Due Fri, Feb 1 - Final)
|
(Solutions)
|
|
Worksheet on rex (Due for TTh section on
2/7) | |
|
Section 1 (MW): Assignment 2 (Due Fri, Feb 8 - Final)
|
(Solutions)
|
|
Section 2 (TTh): Assignment 2 (Due Fri, Feb 8 -
Final)
|
(Solutions)
|
|
Assignment 3 (Due Fri, Feb 15 - Final)
|
(hw3.rex Solution)
(OpenList.java)
(Javadoc)
|
|
Assignment 4 (Due Fri, Feb 22 - Final)
|
(Queue using QCell,
Queue using OpenList
(javadoc),
Unicalc
(javadoc))
|
|
Worksheet on search et al. (Due for Section 2 in
class 2/26) | |
|
Assignment 5 (Due Fri, Mar 1 - Final)
|
(Maze.java
Deque without Inheritance)
|
|
Assignment 5 (TTh version) (Due Fri, Mar 1 - Final)
|
(Maze.java
Deque.java with inheritance)
|
|
Assignment 6 (Due Fri, Mar 8 - Final)
|
|
|
Assignment 7 (Due Fri, Mar 29 - Final)
|
(Parser.java)
|
|
Worksheet on circuit design (Due for TTh section on
4/4) | |
|
|
|
Assignment 8 (Due Fri, Apr 5 - Final)
|
(Parser.java)
(simpsons.txt)
|
|
Assignment 9 (Due Fri, Apr 12 - Final)
|
(proof.txt)
(puzzles.pl)
|
|
Assignment 10 (Due Fri, Apr 19 - Final)
|
(bigO.txt)
(Heap.java)
(Power.java)
|
|
Assignment 11 (Due Fri, Apr 26 - Final)
|
|
|
Sequential Logic Design Worksheet (Due Fri, May 10 - Final)
|
(Solutions)
|
|
Extra Credit Assignment 12! (Due Sun, May 12 - Final)
|
(Solutions)
|
| | |
Assignment Policy
Each week will have an assignment that "exercises" that week's (and
prior) material. Most assignments will be due on Friday at
midnight. Since we use an automated procedure to determine
submission time, if you submit even slightly after midnight, it will be
recorded as being submitted the next day. However, there is a built-in
two-day extension available on each assignment. Assignments submitted
within the two-day extension (i.e., by Sunday at midnight)
will be graded for full credit; those submitted
the day after that will lose half credit; assignments even later
will not receive credit. (We start posting solutions.)
Submitting Assignments
To submit an assignment, run the following on
turing (and not some other machine)
cs60submit filename
|
where filename is the file containing the assignment
to be submitted. The file should be a normal
text (ascii)
file, that is, it should be source code. It is best to
keep the lines in your code to 80 characters or fewer. This will
make the graders (and you) more happy!
The submission program
will ask what assignment this is
and then submit the
assignment properly. Shortly thereafter (usually a few seconds),
you will receive on turing by e-mail an exact
copy of what was submitted. You must either read
mail on turing or have your mail forwarded in order to get this
response. You will notice that some headers are attached,
containing certain essential information. These headers are
commented out so that compilation of the program is not affected.
If what you receive is not what you wanted to submit,
you are responsible for noticing this immediately,
correcting the file, and re-submitting it. All submissions will
be kept for archival purposes, but only the latest submission
before the time deadline will be graded.
Mail on Turing
Your account will have a file named
.forward
in your top-level directory (~).
Yes, there's a dot in front of the file name. To see such files,
type ls -a, because ls alone hides files
beginning with .
In your .forward file will be the email address
you normally use (we will ask for it) and the following:
,\yourUsername
where yourUsername is replaced by (what else?) your
turing username. The latter piece allows you to keep a
copy of your email on turing. If you don't want to, you
may delete that piece.
Do not create mail-loops by having another machine
forward to turing when turing is forwarding to that machine. This
eats up system resources and may cause the loss of your account!