Program 7 for Comp 150: Final Python Project
This is a pair assignment worth 80 points.
The program should begin with a comment including your names,
a brief description of what the program does and information on any help you received on
the project. If it is entirely your own
work, say so. If
anyone helped either of you,
identify them by name and describe how they helped. If you
modified code found elsewhere (or old code of your own), indicate that.
Remember to turn in your work using the Blackboard
Assignment system. Have one member turn in the files for the work
and each turn in logs, as described in the Pairs
Administration
page:
The log should
indicate your hours working on the homework and an assessment of your
contribution and an assessment of your partner's
contribution.
Be prepared to
demonstrate your program to the class on the day after it is due in
Blackboard. Note the unusual due date and time.
This project is completely open ended as to subject or results. The
one requirement is that you must use functions in
your project, if only to break it up into logical units. You
may want something that uses graphics. You are perfectly
free to use any of the modules in the book or to get ideas for projects
from exercises in the book. However, I am looking for work that
you do.
Of the 80 points total, 20% will be awarded for creativity.
10% will be based on whether you do a good job of dividing the job into
individual functions which have the appropriate parameters and
return the appropriate values. Your program will also be
evaluated on how easy it is to read, the quality of your
documentation. The project will also be evaluated on the degree
to which it incorporates your abilities with many of the ideas in the
course: loops, decisions, sophisticated logic, lists,
reading/writing files if that fits in.
Merely making it long by
writing more and more code with the same basic format does not add
much.
In fact, writing almost the same thing over and over rather than
using a function, will reduce your grade. If you want your
program to be a cgi script, executable
from the web, that is OK but certainly not required, and if you do a
cgi script, the emphasis is what the Python part does, not using a
web page composer. (Do make a comment as to the URL if your work
runs from the web!) If you want to look at the Python
documentation, and use modules we have not used in class, that is
definitely a bonus. The first day of class I mentioned renaming and
reorganizing files. That would require reading more in the module
os, for instance....
If your first open-ended graphics project was appropriate you may
be able to expand it into something appropriate for this project as
well. Games are always a good source of ideas. Rewriting
something you did before, but much more clearly and concisely this
time, counts as some progess, too, but be sure to go way beyond the
original, and make sure to organize your work into functions!
On Thursday, April 27, I will ask you to give a description of your project and a progress report,
emailed to me
and Nilanjan. This is not something to start on the last day!