-


> > > > Programming Assignments

Submissions

Assignments are due at 11:59pm on the date listed. Submissions must be done from your Zoo account (see the Zoo page for account requests) and grades will be determined by how submissions behave on the Zoo machines. See below for instructions for using the submit system.

Each submission must also have a makefile and a log file (see below for log file requirements).

Late Policy

There is an automatic two-hour grace period for each programming assignment. Beyond that, late submissions with no Dean's excuse will incur a 5-point penalty for each 12-hour period after the assignment is due. Submissions will not be accepted more than 48 hours late. Each student's first 20 lateness points for the semester will be forgiven.

General Rules for Passing Automated Tests

Project Due Date
(yyyy-mm-dd)
Description
1 2017-09-13 Distance Calculator
2 2017-09-27 SpinOut
3 2017-10-11 Conway's Soldiers
4 2017-10-25 Cooccurrence Matrix
5 2017-11-08
2017-11-10
Polymorphic Game
6 2017-11-29 Game Framework I
7 2017-12-11 Game Framework II

The submit Program

The submit program can be invoked in eight different ways:
% /c/cs427/bin/submit  1  Makefile tokenize.c unique.c time.log
submits the named source files as your solution to Homework #1;
% /c/cs427/bin/check  2
lists the files that you have submitted for Homework #2;
% /c/cs427/bin/unsubmit  3  error.submit bogus.solution
deletes the named files that you had submitted previously for Homework #3 (i.e., withdraws them from submission, which is useful if you accidentally submit the wrong file);
% /c/cs427/bin/makeit  4  tokenize unique
runs "make" on the files that you submitted previously for Homework #4;
% /c/cs427/bin/protect  5  tokenize.c time.log
protects the named files that you submitted previously for Homework #5 (so they cannot be deleted accidentally);
% /c/cs427/bin/unprotect  6  unique.c time.log
unprotects the named files that you submitted previously for Homework #6 (so they can be deleted); and
% /c/cs427/bin/diffit  7  unique.c time.log
uses /usr/bin/diff to compare the named source files with the versions that you submitted previously for Homework #7; and
% /c/cs427/bin/retrieve  8  Csquash.c
retrieves copies of the named files that you submitted previously for Homework #8 (in case you accidentally delete your own copies).

Log files

Your log file should be a plain text file of the general form (that below is mostly fictitious):
ESTIMATE of time to complete assignment: 10 hours

      Time     Time
Date  Started  Spent Work completed
----  -------  ----  --------------
8/01  10:15pm  0:45  read assignment and played several games to help me
                     understand the rules.
8/02   9:00am  2:20  wrote functions for determining whether a roll is
                     three of a kind, four of a kind, and all the other
                     lower categories
8/04   4:45pm  1:15  wrote code to create the graph for the components
8/05   7:05pm  2:00  discovered and corrected two logical errors; code now
                     passes all tests except where choice is Yahtzee
8/07  11:00am  1:35  finished debugging; program passes all public tests
               ----
               7:55  TOTAL time spent

I discussed my solution with: Petey Salovey, Biddy Martin, and Biff Linnane
(and watched four episodes of Futurama).

Debugging the graph construction was difficult because the size of the
graph made it impossible to check by hand.  Using asserts helped
tremendously, as did counting the incoming and outgoing edges for
each vertex.  The other major problem was my use of two different variables
in the same function called _score and score.  The last bug ended up being
using one in place of the other; I now realize the danger of having two
variables with names varying only in punctuation -- since they both sound
the same when reading the code back in my head it was not obvious when
I was using the wrong one.
but MUST contain

This log will generally be worth 5-10% of the total grade. To facilitate analysis, the log file MUST be the only file submitted whose name contains the string "log" and the estimate / total MUST be on the only line in that file that contains the string "ESTIMATE" / "TOTAL".


Valid HTML 4.01 Transitional