Programming Assignments
Programs will be graded on a 10-point scale according to
these criteria:
Documentation: Your program must include comments that
clearly explain what is being done. There should be a comment at
the top of each file describing what the program does. There
should be a comment at the top of each class saying what the class
does. There should be a comment at the top of each method saying
what the method does. And there should be a comment at the top of
each block of code (10 lines or less) saying what that block of
code does. If you have more lines of comments than you have code,
then you are doing well.
Correctness: Your program should do what it is supposed
to do, as defined in the assignment.
Elegance, Efficiency, Quality: Your program should be
elegant, readable, exhibit good programming style, be efficient,
and generally represent the best solution achievable.
The grading will follow this guideline
Formatting (1 point possible):
- Poor spacing and indenting that obscures the meaning of the
program: 0 points
- Adequate spacing and indenting that enhances the reader's
understanding of the program: 1 point
Identifiers (1 point possible):
- Identifiers (variable and method names) that mean nothing,
or actively obscure the meaning: 0 points
- Adequate identifiers that enhance the clarity of the
program: 1 point
Comments (3 points possible) :
- No comments: 0 points
- Some comments, but fairly poor: 1 point
- Ok comments that explain much but not all of what the
program does: 2 points
- Complete comments that do a good job of explaining
everything: 3 points
Correctness (5 points possible):
- No code: 0 points
- Code exists: 1 point
- Code does something: 2 points
- Code does almost everything: 3 points
- Code does everything: 4 points
- Code does everything well: 5 points
Extra Credit: Elegance, Efficiency, Quality (1 point
possible):
- Great code that does everything in what you would consider
just the right way: 1 point
- Everything else, plus goes a step further, solving a more
difficult problem or providing really outstanding output,
etc.: 1 point
- Wow: 1 point
Note: The dates below are tentative. They will be finalized as
each assignment is ready.
Programming Assignments
Assignment 0: Hello, World!
- Due: Do it some time before Sunday, January 18.
- Program Description: Run the Hello, World! program found in
the book. Or any other program. Just get something running!
- This is an ungraded assignment. You must do it and turn it in, but it will not be graded.
Assignment
1: Variables and expressions
- Due Sunday, January 25, before midnight.
- This assignment will be ungraded, but you must do it and submit it.
Assignment 2: Conditionals
- Due Sunday, February 1, before midnight.
- This assignment is graded.
Assignment 3: Primes and Loops
- Due Sunday 2/8/2009, before midnight.
- This assignment is ungraded, but you are still required to do it and submit it.
Assignment 4: Coconut Pi
OR
Fix your code and add 6 functions to Assignment 2
- Due Sunday 2/15/2009, before midnight.
- This assignment is graded.
Assignment 5: Word count
- Due 3/1/2009, before midnight.
- This assignment is graded.
Assignment 6: life1D
- Due 3/15/2009, before midnight.
- This assignment is graded