Create an object-oriented program (OOP), binary tree, and a menu-driven that manages contact information and stores contact information in a CSV text file.
Specifications
• Define a user menu:
Example: Contact Main Menu ================= Display inorder traversal Display preorder traversal Display postorder traversal View a contact Add a contact Delete contact Exit Program
• Use a comma-delimited text file named contacts.csv Download contacts.csv (click to download) that stores the starting data for the program.
• Define a class person and data structure to store the data for each contact.
• Define member variables for the person: Example: first_name,last_name,address,city,county,state,zip,phone,email • Define a class binaryTreeType Example: see Discussions for binarytreeType example
• Define a class myBinaryTreeType sing template Example: template class myBinaryTreeType:public binaryTreeType
• For the view, you can search by any field and display an error message if the user enters an invalid field name.
• Prompt user to enter input contacts file name (default contacts.csv) - use try-catch when opening the file and display an error message accordingly.
• When you start the program, it should read the contacts from the comma-delimited text file and store them in a binaryTree of contact objects.
• When reading data from the text file, you can read a line of contact and create a contact instance (object) and store it in the linked list.
• When you add or delete a contact with no change to the order of the original contacts.csv file, the change should be saved to the text file immediately. That way, no changes are lost, even if the program crashes later.
• When you add a contact, the change should be appended to the text file and saved to the text file immediately. That way, no changes are lost, even if the program crashes later.
• Display all contacts - use iomanip to format and align data as rows and columns
• Heap is a tree-based data structure so sorting should be automatic
• View a contact - use iomanip to display a contact
• Define the enumeration for the menu commands (ex. l, v, a, d, x) I WILL PROVIDE THE CSV AND BINARY TREE HEADER FILES ALREADY. USE FOR THE PROGRAM PLEASE
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of