On Handing in Programming Assignments

Format

Each assignment should be handed in with the following components, in this order: The cover sheet should give your name, the course name/number, the assignment number, your UNIX login name (NOT passsword), and your email address.  Each page should have your name on it as well.  For your source code, each page should also be labeled by the filename and page number within that file.

Style, Formatting, and Comments

Here are my expectations regarding what your source code should look like.  Note that these issues will affect your grade.

Your source code must be readable:

You should make reasonable and consistent use of indentation and blank lines:  the details are up to you.  One of the best ways to do this is to find a C++ book that has a style you like, and adopt it as your own.

Identifiers should be self-documenting; that is, the names you choose should make their roles reasonably clear (with the possible exception of simple counters, for which names like i and j are acceptable).  Brief comments for each identifier are useful.

Comments should describe the structure and approach of your program:

Input and Output

In general, I expect you to test your program using a variety of inputs.  Depending on how the assignment is structured, this might entail running your program several times, or it might mean just running your program once.  Unless the assignment specifies otherwise, you should deal with input and output as follows:

If Your Program Doesn't Work

This is important!
In the (unlikely) event you are unable to generate meaningful output (most likely due to compiler error, or possibly severe problems running the program) you should instead do the following: You must also write (by hand, if you like -- legibly) an explanation of what you believe the problem to be and what you would do if you had more time to fix it.

Without either meaningful output or an explanation of the problem, your work will get a 0.