Assignment 3 - Spring 2019

Assigned: Mon, Mar 25
Due: Wed, Apr 3

bouncing balls

For this assignment you will:

  • Design a world (big-bang) program that displays many bouncing balls, of different sizes, colors, and velocities.
  • Follow the Design Recipe to develop functions that consume/produce an individual ball, and a list of balls.

Assignment Setup

  1. Use your CS account to login to one of the Linux workstations in the classroom or Asprey Lab.

  2. Open a browser and copy/paste this URL:

  3. Login to Github and you will be prompted to accept this assignment
    • Note: this will create your own copy of Assignment 3 for you to work on, but it's not on your Linux account yet

  4. Open a terminal window.

  5. Create a new directory for this assignment in your cs101 directory by entering the following at the Linux prompt:
    $ cd cs101
    $ mkdir assign3
    $ cd assign3

  6. Type the following commands to pull down a copy of this lab from GitHub:
    $ git init
    $ git remote add origin
    $ git pull origin master


For this assignment, you will design a world (big-bang) program that moves many balls around the scene simultaneously, each one bouncing off all four walls of the scene. I've provided you with starter code and instructions that you should find helpful. Your balls should be different colors and sizes, and move with different velocities.

To get started, launch DrRacket and follow the instructions provided in the assign3.rkt to complete the assignment.

Be sure to follow the Design Recipe for each function you develop.

From a terminal window, type the following commands at the Linux prompt:

$ git commit -m "finished assign3.rkt" assign3.rkt
$ git push -u origin master