View and Controller Class
This program will use the MVC model. You must have a view and controller class. You can decide what functions you have in these classes. A user must be able to do the following with your program
· View the name of the zoo
· Change the name of the zoo
· View all the information about the zoo (name and all animals)
· View a list of the animals (just names and ids)
· Add an animal to the zoo
· Remove an animal from the zoo based on id
· View an animal based on id
· Listen to an animal based on id
· Exit the program
Tip: Having a secret command that just creates a bunch of animals and adds them to the zoo will speed up testing. Feel free to leave it in for your submission.
For all the functions, assume the user is not going to do improper input (put in a letter instead of a number, or put IDs for animals that do not exist). If you put any limitations on input, be sure they are clear while running the program so the TA knows them when running the program (such as word limitations or only putting ints instead of strings/chars).
UML
You must create the UML diagram for your implementation. The Animal and Zoo classes are done for you. You need to create the View and Controller classes, put in all the functions, and make sure you have the correct arrows linking everything together.
Program 3 - CSE 1325 Summer 2020 In this assignment, you will be building off of Program 2 to make a Command Line Interface (CLI) to manage the zoo. The requirements are listed below Zoo Class You will need to add the following methods to the zoo class to make this easier to work on. Animal view_animal(int id) - Returns the animal with the matching id std::string list_of_animals() - Returns a string containing a list of animals, only the names and ids View and Controller Class This program will use the MVC model. You must have a view and controller class. You can decide what functions you have in these classes. A user must be able to do the following with your program · View the name of the zoo · Change the name of the zoo · View all the information about the zoo (name and all animals) · View a list of the animals (just names and ids) · Add an animal to the zoo · Remove an animal from the zoo based on id · View an animal based on id · Listen to an animal based on id · Exit the program Tip: Having a secret command that just creates a bunch of animals and adds them to the zoo will speed up testing. Feel free to leave it in for your submission. For all the functions, assume the user is not going to do improper input (put in a letter instead of a number, or put IDs for animals that do not exist). If you put any limitations on input, be sure they are clear while running the program so the TA knows them when running the program (such as word limitations or only putting ints instead of strings/chars). UML You must create the UML diagram for your implementation. The Animal and Zoo classes are done for you. You need to create the View and Controller classes, put in all the functions, and make sure you have the correct arrows linking everything together. Submission You will submit your code via Canvas. You will upload a zip file, named “abc1234_HW3.zip”, containing the following file structure: · abc1234 · abc1234_Animal.h · abc1234_Animal.cpp · abc1234_Zoo.h · abc1234_Zoo.cpp · abc1234_View.h · abc1234_View.cpp · abc1234_Controller.h · abc1234_Controller.cpp · abc1234_main.cpp · Makefile · abc1234_HW3UML.xmi (can submit as image or pdf This program will only be run and tested with make command. Your program must compile and run with just the make command. Full credit files named incorrectly will result in a loss of 5 points each. Failure to follow proper file structure will result in a loss of 5 points. Bonus files named incorrectly will result in a loss of 1 bonus point each.