Fundamentals of Computer Science I

Assignment 9

Final Project


This assignment is very open. Simply, create an interactive graphical program using Pygame.

Design Document

Because there are no assignment restrictions, other than using Pygame, your program will be graded on whether it meets your own design specifications. Please submit a hard copy of your final project's design document in-class on Monday November 25th. The design document should include:

  1. A textual description of the program.

  2. A labeled illustration of the program interface.

  3. The concepts you have learned this semester that will be used in your program.

  4. Why you think your program is sufficient to qualify as an assignment.


The RCSCACM is hosting a Hack-a-thon from 7:30 PM on Monday, December 2nd until 7:00 AM on Tuesday, December 3rd. Refreshments will be provided. Computer Science majors, Scotty and I will be available to answer questions during this time. The hack-a-thon is optional but it should be a fun way for you to create a great final project in one night.


Class is cancelled Friday, December 6th. This is so you can join us for the CPSC 120 Showcase from 12:00 PM to 1:00 PM in the Atrium of the Colket Center! You will spend this time showing off your programs to students from across the campus, as well as presenting your program to me. A portion of your final assignment grade will be from this presentation. If you have a scheduling conflict, contact me ASAP to make accommodations.


Bonus points may be awarded to programs that are viewed favorable by your fellow students. It is in your best interest to do your best!


Submit your code before noon Friday December 6th.

Your code should conform to the course's code conventions. Create a tar file of your assignment9 directory by navigating to your assignments directory, using the cd command. Then, issue the following command.

    tar czf tarfilename.tgz assignment9/

To verify that the tgz file contains your code run the following command. It should list all of your .py files.

    tar tzf tarfilename.tgz

To submit your activity, go to cseval.roanoke.edu. You should see an available assignment called Assignment 9. Click the submit button and choose the tgz file you created to upload. Only one person per group needs to submit.

Be sure to also copy or email the tgz file to your partner. To extract the files in a tgz file from the terminal use the following command:

    tar xzf tarfilename.tgz