CS 139 Algorithm Development
PA0: Making art with Scratch

Due: Thursday, Sep 6th at 11:59 PM

Objectives

The students will:

Instructions

Now is your chance to shine! You have already introduced yourself with the "about me" exercise, created a "dance party" with multiple sprites, and learned about several programming constructs. In this assignment, you will create an original work of interactive art. Viewers should be able to participate with your artwork using the four arrow keys:

It's up to you where to handle arrow key events: in a single sprite, in multiple spites, on the stage, all of the above, or something else. Your project should also include some aspect of random behavior, for example:

Random numbers can be used in Scratch in place of any regular number (i.e., whenever there's a rounded placeholder in a block). You can even pick a random number between two random numbers!

Refer to the "Arts" handout for a list of other recommended blocks.

Requirements

Your project must contain the following elements (at a minimum):
  1. Three or more sprites that change costumes or colors
  2. Different interactions for each of the four arrow keys
  3. An if-else block inside of a loop (e.g., forever or repeat)
  4. Use of random numbers (but don't randomize everything)
  5. Some original drawing, either with sprites or pen blocks
Most importantly, be creative! You can design any project you like as long as it satisfies the above requirements. And just for fun, consider adding an Easter Egg.

Deliverables

Submit the following via Blackboard:
  1. Title and one-paragraph description of your project.
    Please save these in a plain text file (not Word).

  2. A representative screenshot of your artwork.
    Right click the stage and select "save picture of stage..."

  3. Your Scratch project file itself.
    Note that Scratch embeds any images/sounds you add.
Your files must be named pa0.txt, pa0.gif, and pa0.sb. Attach these files separately to your submission (please do not zip them). Blackboard will automatically add your e-ID and submission time to the filenames.

We will create a virtual gallery of your projects for all students to enjoy. So make sure you do a professional job on all three of these deliverables!

Honor Code

This assignment should be viewed as a take home exam. Your submission must conform to the JMU Honor Code. Authorized help is limited to the lab handouts, the TAs for any CS139 or CS239 section, and the professor for your section. Copying work from another student or the Internet is an honor code violation and will be grounds for a zero on the assignment.