CS-161 Lab #9: Final Project

At the top of the every document that you create (word processing files or source files) include:
* Description of the class or document.
* @author YOUR NAME
* @version CS161 Lab #, mm/dd/yyyy (replace with the last edit date)
Submit in this lab via Moodle using the “Lab #” link. Your assignment must be uploaded by midnight of the due date. Moodle will automatically close the link at that time. It is strongly highly recommend you do not wait until the very last minute to submit your work.
The intent of this assignment is for you to bring together all of the concepts you have learned this term and put them into a cohesive program. We encourage students to colaborate, form study groups, and share ideas. However, you will need to turn in your own unique design and code for this project.
Review any of the material from Chapters 1-7 of the text, and any of the tutorials that we have studied this term. This is a comprehensive project that you get to design and implement with only a general problem domain for you to work in. However, you must demonstrate usage of a large coverage of the syntax that we have studied this term.
Assignment Instructions
You will create four classes that must all interact in some meaningful way. In order to start you will create a class diagram to determine which classes depend on other classes and what those classes are. The classes you create will be:
Garden Gardener Plants_Flowers Tools
To begin I suggest you look at your four classes and individually decide what each will contain. Ask yourself what are the attributes and what does this class do. From here you should be able to get a toe hold to start your development.
Within this project you must use the following:
1. Multiple constructors within one class
2. Internal and external method calls(which will be necessary)
3. An if statement
4. Import statements used correctly
5. Two collections from the java library, one of which may be an ArrayList
Western Oregon University Page 2 of 2
CS-161 Lab #9: Final Project
6. Loops
a. for-each
b. while
c. for
7. An Iterator
8. An array
9. Logic operators
10. Mathematical operators
11. String methods (use the java libraries)
12. Random number generator
13. A HashMap in addition to the requirements in 5 above.
14. At least one class constant variable
15. Your code should be:
a. Well designed
b. Commented and each class should be documented
TURN IN your entire project folder, your entire should be properly commented and formatted, including the identifying information noted in the “general section”. NOTE: You must write JavaDoc style comments for EACH public CLASS and EACH public METHOD that you create or modify. Starting with Lab #3, it is required that you run the code formatter (BlueJ Auto-layout) over ALL of the classes before you Zip and submit your lab.
1) ZIP the entire project folder, DO NOT delete any of the files. You will upload the single ZIP compressed file. Please ONLY submit Zip formats. Other compression formats require the grader to spend more time opening various tools to handle other formats, so only ZIP will be accepted.
2) Submit any required document as a separate file.
3) Log in to Moodle.
4) Click the Lab # link in the week # activity block in the class Moodle site, then browse to your document and upload the document you created.
5) If you need to submit an updated version, click on the submit link and you will see the file you previously uploaded, click the edit these files button. On the right of the file name you will see this icon . Click on the icon, delete your previous submission, and then upload your updated version.

Use the order calculator below and get started! Contact our live support team for any assistance or inquiry.