C Sc 127B Programming Project 8: Recursion
Due Date: Tuesday, 27-March @ 10:00 p.m.
Collaboration: Complete this by yourself!  Do not look at another person's code

 

A. Add Four Recursive Methods and test methods to RecursionTest.java

Complete these four problems where each requires a test method and at least one recursive method inside the same unit test named RecursionTest.java

B.  Complete class ObstacleCourse

Complete 10K Escape the Obstacle Course as described on pages 219..222. You are asked to implement public interface ObstacleCourseInterface (also listed in the book). To see your algorithm in action, add ObstacleCourseGUI.java to your project and run it as a Java application. When this runs, you will be prompted for an input file. You may use these three data files from his textbook's web site.

If you make up any of your own input files, make sure there spaces in each last column and no blank lines.

Grading Criteria

A. Four Recursive Methods in RecursionTest.java

____/   +3 Project includes RecursionTest.java that compiles and it has all four recursive methods with their tests
____/   +8 You have assertions to adequately test each recursive methods

____/ +24 All of our assertions pass

____/   +3 combinations is recursive, spelled correctly, has correct parameters, and declared public

____/   +3 GCD is  recursive, spelled correctly (upper case), has correct parameters, and declared public
____/   +3
sequentialSearch is recursive, spelled correctly, has correct parameters, and declared public
____/   +3
sumLinked is recursive, spelled correctly, has correct parameters, and declared public


B. Escape the Obstacle Course
____   +2 ObstacleCourse implements the interface in ObstacleCourseInterface.java
____   +2 Project includes ObstacleCourseGUI.java, it compiles, runs 
____ +35 If algorithm escapes correctly all the time: 5 points for each of the 7 data files we will use to test your code


Style and Design

____/ +4 Project and turnin folder named  8_SLFirstName_YourFirstName_YourLastName
____/ +2 Turned in work as an Eclipse project
____/ +8 You used  'Good Style, Design, and Comments', which is defined as:


    o Your class has your name and a description of its purpose.

    o You wrote a comment to describe every method (could be just one sentence).

    o Used intention-revealing names (meaningful identifiers).

    o Used consistent spacing/indentation (format all code with Source > Format).

    o The class name begins with an UpperCase letter

    o All method and variable names begin with a lowerCase letter

    o Placed one blank line between methods.

    o Used local variables when appropriate and instance variables when appropriate