CSCI2010L Programming II - Lab 9
Finch Robot: Design and implement an appropriate set of classes to meet the following requirements. The classes you implement should be well-named, cohesive, minimize dependencies, and separate accessors and mutators. The side effects of your methods should be minimized. Write a Java program that enables a Finch robot to successfully complete a maze. This maze will be provided by the instructor and can vary in configuration from time to time. This means that you will need to solve the maze navigation problem generally and not just code 1 solution to 1 maze configuration. Your program should minimize its backtracking and should be able to successfully reach the end of the maze given only that it is positioned generally in the correct direction at the beginning of the maze. The maze will have 2 or 3 turns and will vary in width. There will be no dead-end paths in this maze.
The structure of this program should be determined by you but must include a Main class and at least 1 other class. Remember to provide Javadoc comments for all classes, methods, parameters, and return values.
There will be a zip file posted on the Canvas Assignment page for Lab 9 that you will need to interface with the robot. There is a version of this file specific to Windows PCs and Macs. Use the version that is compatible with your laptop OS. The Javadocs contained in this zip file contain documentation on all Finch methods. The code files include many examples of working Finch code.