This is a free form programming assignment where you are: Required to create a simple phone book application Asked to make a choice of appropriate data structure and implementation. Defend your selection and explain the efficiency of your program using Big(O) notation. You do not need to create data structures from scratch. You are free to use data structures available in the standard template C++ library. For example std::stack or std::set , std::maps, etc. You have familiarity with these from your Code Step by Step labs. You are not permitted to use simple arrays. Specifications Create a phone book program that stores and manages contact information. Contact information is name and corresponding phone number. The program reads this information for multiple contacts from a data file “contacts.txt” and saves them in a suitable data structure. Once the data is stored, it allows the user to display all contacts, add a single contact, remove a contact, update a contact, or populate more contacts from a file called “update.txt” It offers a menu with the following options: 1. D : Display all contacts in aphabetic order (sorted by first name) 2. A : Add a contact (user enters the name and phone number from console) 3. R : Remove a contact (user enters the name from console) 4. C: Change contact information (user enters the name and new phone number from console) 5. U: Reads a list of contacts from the “update.txt” file into the existing database 6. Q: Quits the applications Duplicate names are not allowed. If user tries to add a name already there, then no overriding is done. Same for update. But the ‘C’ change function can be used to change the phone number of an existing contact.
This is a free form programming assignment where you are:
Required to create a simple phone book application
Asked to make a choice of appropriate data structure and implementation.
Defend your selection and explain the efficiency of your program using Big(O) notation.
You do not need to create data structures from scratch. You are free to use data
structures available in the standard template C++ library. For example std::stack<int> or
std::set<int> , std::maps<int,int>, etc. You have familiarity with these from your Code
Step by Step labs. You are not permitted to use simple arrays.
Specifications
Create a phone book program that stores and manages contact information.
Contact information is name and corresponding phone number. The program reads this
information for multiple contacts from a data file “contacts.txt” and saves them in a
suitable data structure. Once the data is stored, it allows the user to display all contacts,
add a single contact, remove a contact, update a contact, or populate more contacts
from a file called “update.txt”
It offers a menu with the following options:
1. D : Display all contacts in aphabetic order (sorted by first name)
2. A : Add a contact (user enters the name and phone number from console)
3. R : Remove a contact (user enters the name from console)
4. C: Change contact information (user enters the name and new phone number
from console)
5. U: Reads a list of contacts from the “update.txt” file into the existing database
6. Q: Quits the applications
Duplicate names are not allowed. If user tries to add a name already there, then no
overriding is done. Same for update. But the ‘C’ change function can be used to change
the phone number of an existing contact.
![Zippy 916-334-8763
Vera 888-373-1626
Sally 929-838-1111
Betty 733-736-0912
Mai 616-213-8631
Juan 280-276-9172
Theresa 916-837-2612
Amelia 992-827-1222
Iman 919-000-0010
Wanli 212-928-3333](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F13d0c53f-ba0d-4044-b2a0-42fa845a9d28%2F9dfd8be1-3dfe-43ee-8113-faa080b8a19e%2F1hjb1fr_processed.png&w=3840&q=75)
![Willie 876-563-5624
De'Aaron 675-345-2652
Nigel 675-645-3456
Vince 567-487-3628
Justin 456-345-4764
Bruno 726-872-5426
Kosta 123-453-6745
Skal 234-567-3418
Harry 324-653-6753
Frank 234-456-2789
Zach 454-364-7839
Harry 324-653-6753
Iman 908-767-6352
Garret 523-647-6540
Buddy 453-647-8987](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F13d0c53f-ba0d-4044-b2a0-42fa845a9d28%2F9dfd8be1-3dfe-43ee-8113-faa080b8a19e%2F7d7p7kk_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 11 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)