Create a program of several prototypes for functions, C/C++ Programming

Assignment Help:

In this assignment the main has been written for you in the file phone_book_main.cpp. You will also notice that a class called Person has been declared as having several prototypes for functions. You will define all of these in a file called hw7.cpp.

How the program is supposed to function.

When you first run the program it fills a vector called phone_book with some default values and then outputs the contents of the vector. After this it displays a "menu" where the user can input a number to run a function that will manipulate the phone_book vector in some manner. 1) Add people to the phone book.2) Erase a person from the phone book.3) Sort the phone book.4) Shuffle the phone book.5) Reverse the phone book.6) Print the phone book.7) Look up a person in the phone book.8) Quit.

Add people to the phone book.

Selecting this option runs a function: void add_people(vector&phone_book); This function will ask a user to enter a name or Q to quit. Next it will ask for a phone number. Then the function constructs a person object using the data the user gave and add it to the end of the phone book. Then the user is again told to enter a name or Q to quit and so on.

Erase a person from the phone book

When a user selects this option, it first asks the user for a name (This is done in main so you are not responsible for it) then runs a function: void erase(vector&phone_book, string name); This function finds the entry in the phone book with the corresponding name and then erases it.

Sort the phone book.

Selecting this option runs a function: void sort(vector&phone_book); This function sorts the vector phone_book in lexicographical order using the name entry of the Person class.

Shuffle the phone book.

Selecting this option runs the function: void shuffle(vector&phonebook); This function works much like the shuffle function discussed in class.

Reverse the phone book.

Selecting this option runs the function: void reverse(vector&phonebook); This function reverses the vector.

Print the phone book.

Selecting this option runs the function: void print(vector&phone_book); This function outputs the contents of the vector.

Look up a person in the phone book.

When a user selects this option it first asks the user for a name (This is done in main so you are not responsible for it) then runs a function: int lookup(const vector&phonebook, string name); This function returns the phone number of the Person with the matching name. Once your function returns the phone number to the main it is then outputted to screen. (This is done in main and you are not responsible for it.)

Other instructions

You need to be careful with indices. If someone searches for a person in your phone book who is not there your program should not crash! Your function lookup should return -1, for example, when the user wants to find a phone number for a Person who is not in the phone book.

Helpful hints

  • You are only creating file hw7.cpp and using it in combination with the files phonebook.h and phone_book_main.cpp already provided for you.
  • You CANNOT change the files phonebook.h and phone_book_main.cpp!
  • Your first step should be to get a program that compiles without writing the details of the functions quite yet.
  • You will not be able to compile until all the functions definitions have been written. Write empty function definitions with just return statements where needed.
  • You should write the functions but leave everything inside { } empty except possibly a return statement where needed.
  • Once the program compiles, start filling in the functions inside hw7.cpp
  • You may write helper functions like swap when needed.

Related Discussions:- Create a program of several prototypes for functions

Masm procedure to perform letter case conversion, Assignment:  write a C pr...

Assignment:  write a C program and a MASM procedure.  The C program calls the MASM procedure to perform letter case conversion. Text sections covered:  12.1 to 12.3.1 Write a

Area under curve, Write a program to find the area under the curve y = f(x)...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b

Explain the bit wise operations, Explain the Bit Wise Operations? C lan...

Explain the Bit Wise Operations? C language in particular was created to make it easier to write operating systems. The objective was to have a language that provided excellent

Explain logical operators, Logical Operators We say any expression that...

Logical Operators We say any expression that evaluates to zero is a FALSE logic condition and that evaluating to non-zero value is a TRUE condition. Logical operators are usefu

What is an iterator class?, A: A class which is used to traverse through th...

A: A class which is used to traverse through the objects maintained through a container class. There are _ve categories of iterators: output iterators, input iterators, forward ite

Miss, Depreciation to a salvage value of 0. For tax purposes an item m...

Depreciation to a salvage value of 0. For tax purposes an item may be depreciated over a period of several years, n. With the straight line method of depreciati

#titletrees.., #question.conversion of tree into binary tree.

#question.conversion of tree into binary tree.

C program to find area of rectangle, Aim: To implement a program to find a...

Aim: To implement a program to find area of rectangle, surface area of box and volume of box using virtual functions. Code:                       class rect {

Need squid web proxy with ffmpeg to convert flv to h.264, Need Squid Web Pr...

Need Squid Web Proxy with ffmpeg to convert flv to h.264 Project Description: We need a squid proxy setup with the modification that will transcode FLV to h.264 in real-time,

.C# mouse and maze program, .Create a Csharp solution that will show a maze...

.Create a Csharp solution that will show a maze in the user interface and will show a mouse walking through the maze attempting to locate the exit door (the cheese).

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd