CPSC 427/527 Programming Assignments

Submissions

Assignments are due at 11:59pm on the date listed unless otherwise noted. Submissions must be done from your Zoo account 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 120 hours late, nor after the end of reading period. Each student's first 50 lateness points for the semester will be forgiven. The only way to get more is with an official note from your Residential College Dean.

Assignments

Project Due Date
(yyyy-mm-dd)
Description
1 2019-01-29 Distance calculator
2 2019-02-07 SpinOut
3 2019-02-21 Matrix Class Template
4 2019-03-07 STL
5 2019-04-04 Yahtzee
6 2019-04-11
2019-04-16
Yahtzee variant (delivered to Zoo submission directory)
7 2019-04-25 Go Simulation

General Requirements

Log Files

Each submission should include a log file that contains

To facilitate analysis, the log file MUST be the only file submitted whose name contains the string "log" and the estimate and total MUST be on the only line in that file that contains the string "ESTIMATE" / "TOTAL".

Assignments with missing or incomplete logs will be subject to a penalty of up to 5%.

General Rules for Passing Automated Tests

The submit Program

The submit program can be invoked in nine 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/testit  5  NameOfExecutable
runs the public test cases on the files that you submitted previously for Homework #5;
% /c/cs427/bin/protect  6  tokenize.c time.log
protects the named files that you submitted previously for Homework #6 (so they cannot be deleted accidentally);
% /c/cs427/bin/unprotect  7  unique.c time.log
unprotects the named files that you submitted previously for Homework #7 (so they can be deleted); and
% /c/cs427/bin/diffit  8  unique.c time.log
uses /usr/bin/diff to compare the named source files with the versions that you submitted previously for Homework #8; and
% /c/cs427/bin/retrieve  9  Csquash.c
retrieves copies of the named files that you submitted previously for Homework #9 (in case you accidentally delete your own copies).