CMSC 280
Fall 2017
08/28/2017
Spelling Robot
Due:   Fri, Sept 1
5pm

Relevant Reading:

Chapter 3 of the KarelJRobot book.

Assignment: (worth 5 exercise points)

Get Speller.zip. Use the files in this folder as your basis for this assignment.

In this program, you are given a blank world.    Your task is to create a spelling robot that can display the letters A, C, and T.    Putting these together can spell different words.

For instance, I could ask the robot to spell ACT, or to spell CAT, or to spell ACCT, or to spell TTC.   If I change Application for different words, no changes to the spelling robot class should be necessary.

Notes:
  • You will need to change the number of beepers in the Application so that the robot has enough beepers to do its task.
  • For words of more than 3 letters, the word might end up going "off screen".  That's okay.
  • Think through how you will approach the problem rather than just blindly starting to type code.  Plan out what you will do and then fill in the details on the computer.
  • Hint:  Pick a location (eg upper left, lower left, upper right, lower right, center) that each method will assume that the robot starts at.  THEN, make certain that each method puts the robot in the proper position for the NEXT letter.  If you pick a consistent location, this will help.
  • Start this early.  You don't want to wait till the last minute and find you are having difficulties.
  • Remember that you are permitted to talk with others in this section regarding how the program works.  However, you need to do the actual work yourself and understand the answer that you produce.
  • You may want to extend the TurningRobot class we created in class.  If so, you will need to move the TurningRobot.java file into the folder for this exercise and hit Refresh in Eclipse.
  • Remember to put appropriate comments/documentation in your files.
  • Remember that the robot should not have any error shutoffs.

Handin:

  • Go to your Workspace folder.  
  • Create a Zip file of the folder containing your work.
  • Submit that file to Canvas