subject

Complete the assignment below using only ARRAY BASED ORDERED LISTS. C++ Your neighbor is an agent for a group of magicians. People call her to book magicians for holidays. She would like to use her new computer to keep track of the jobs she schedules for the magicians she manages, so she hires you to write the program.

Input
1. The list of magician names is in text file "Magician. dat". The names are listed one
per line, and have a maximum of 20 characters.
2. The list of holidays is in text file "Holidays. dat". Again, the names are listed one
per line and have a maximum of 20 characters.
3. The current schedule (retained data from the previous executions of the
program) is in file "Schedule". You determine the format of this file as part of your
assignment.
4. The user (your neighbor the agent) inputs commands from the keyboard, in
response from program prompts, as described under Command Processing below.
Output
1. Prompts, menus, and responses to user commands are to be written to the
screen, as described in the Processing instructions below.
2. A summary of each command's transaction must be written to a text file called
"Magic. trn". You may determine the format of the information in this file; it should be
labeled and formatted clearly.
3. File "Schedule" must be rewritten to contain the updated magician schedule
information.
Command Processing
The program must process the commands described below. You may determine the
details of the user interface; it must be relatively "friendly" and usable.
SCHEDULE (customer) (holiday)
Prompt the user for the name of the customer who wants to schedule a magician
and for the name of the holiday to be scheduled. Check to see if there is a magician
free for this holiday. You should sequence through the magicians in the order in
which you read them in. If a magician is available, book the magician; then print out
the name of the magician, the holiday, and the name of the customer. If a magician
is not available, put the customer on a waiting list, and print out a message
indicating that the customer and holiday have been put on a waiting list.
CANCEL (customer) (holiday)
Prompt the user for the customer name and holiday. Delete the booking of a
magician for the listed holiday. Delete the reservation for that holiday. Update the
schedule of the magician who was going to perform for the occasion. This may
allow someone on the waiting list to be served. Sequence through the waiting list to
see if someone wanted a booking on that holiday. If someone did want a magician
on that holiday, schedule the booking and print a message. If this person is on the
waiting list, delete the name from the waiting list. SIGNUP (magician)
Prompt the user for the name of the new magician who is signing up with the agent.
DROPOUT (magician)
Prompt the user for the name of the magician who no longer needs the services of
the agent. You must try to redistribute that magician's bookings to other magicians.
If you reschedule a booking, print a message. If you can't, print out a message and
add the request to the front of the waiting list.
STATUS (magician or holiday)
Prompt the user for the name of either a magician or holiday. Print out the
appropriate schedule, appropriately formatted and labeled.
QUIT
Save the updated data to the files, and then terminate the program.
Data Structures
You need lists for storing each of the following:
1. A list of bookings for each holiday. (You may assume that there are at most ten
holidays.) Each list is the schedule of one holiday. Each list element contains the
name of the customer who made the booking and the name of the magician. Each
list should be stored in alphabetical order, using the customer name as a key.
2. A list of bookings for each magician. (You may assume that there are at most ten
magicians.) Each list is the schedule of one magician. Each list element contains
the name of the customer who made the booking and the holiday. Each list should
be stored in alphabetical order, using the holiday name as a key.
3. A waiting list. You need to be able to add to either end of the waiting list. You add
to the front of the waiting list if you are rescheduling someone who had a booking,
but lost it when a magician quit. You add to the back of the waiting list if someone
requests an appointment and there are no free magicians.

ansver
Answers: 3

Another question on Computers and Technology

question
Computers and Technology, 21.06.2019 21:40
Write c function that can replace all the positive elements to 0 and negative to 1 in undefined length one-dimensional array. test your program in the main program by defining one-dimensional array of 6 elements
Answers: 1
question
Computers and Technology, 22.06.2019 08:40
What are the three parts to physical security standards for various types of army equipment and the risk level
Answers: 2
question
Computers and Technology, 23.06.2019 04:31
Q13 what function does a security certificate perform? a. creates user accounts b. scrambles data c. identifies users d. creates password policies e. provides file access
Answers: 1
question
Computers and Technology, 23.06.2019 20:30
What is the biggest difference between section breaks and regular page breaks
Answers: 1
You know the right answer?
Complete the assignment below using only ARRAY BASED ORDERED LISTS. C++ Your neighbor is an agent f...
Questions
question
Mathematics, 06.05.2020 20:21
Questions on the website: 13722361