Starting from:
$30

$24

Camp Posanivee Solution

Description
The director of Camp Posanivee is frustrated. Campers are enrolling and withdrawing from camp faster than her primitive filing system can handle, and she has turned to you. You have been offered free meals at the mess hall in return for a program that will help her keep track of who is enrolled for the two-week summer camp.

Your program will use a binary search tree to maintain the set of campers enrolled in Camp Posanivee. Your program should not be case-sensitive.

Your program will consist of a loop to process commands. The commands should come from a text file (say, "camp.txt"). The program quits when the command 'Q' is given. Below is a list of commands your program should support:

H
Help: print a list of commands
E name age sex
Enroll a new camper (insert)
W name
Withdraw a camper (delete)
D name
Display the age and gender of a camper
A
Print the average age of the campers
L
List all campers names in alphabetical order
S
Print the number of boy and girl campers
P
List all campers names in preorder
Q
Quit
Here name is a string of at most 20 non-blank characters, age is an integer, and sex is either M or F. You may assume command arguments are separated by one or more spaces.

Be sure to echo the input, especially for commands that give no output (like E or W), and handle special cases in a clean way (for example, computing the average age of an empty tree should not crash your program).

Hand In
Turn in a listing of your program, your input, and your output (you can either paste the output into a file to print it, or you can have your program send all its output to a file). If you use the BST.java file from class, unmodified, you need not print it. Be sure to include everyone's name in the comments at the top of your program.

Notes
Remember to include comments at the top of your program and 1-2 lines for each function (for pre- and post-conditions).
Use Javadoc compatible comments.
Start right away!
Example
Here is a sample input file:

A
E Kanga 26 F
E Tigger 28 M
E Pooh 31 M
L
D Tigger
E Rabbit 30 M
A
S
E Eeyore 36 M
W Kanga
P
Q
Here is the output that corresponds:

Welcome to Camp Posanivee!!

Command: A
There are no campers.

Command: E Kanga 26 F
New camper added.

Command: E Tigger 28 M
New camper added.

Command: E Pooh 31 M
New camper added.

Command: L
Alphabetical List of Campers:
Kanga
Pooh
Tigger

Command: D Tigger
Name: Tigger
Age: 28
Gender: M

Command: E Rabbit 30 M
New camper added.

Command: A
Average age = 28.75

Command: S
Camper count by gender:
boys = 3
girls = 1

Command: E Eeyore 36 M
New camper added.

Command: W Kanga
Camper withdrawn.

Command: P
Preorder Traversal:
Pooh
Eeyore
Tigger
Rabbit

Command: Q
End of program.
Bring plenty of calomine!

More products