Modify the contact manger program to separate all implementation of your classes from the header files. You
Question:
Modify the contact manger program to separate all implementation of your classes from the header files. You should have a .cpp file and a .h file for each class you create.
When you are done your program should be fully functional and free from errors.
Below is the code I have so far all in one main.cpp file. How should the code look if I need to separate all implementation and include a .cpp and .h file for each class?
#include
#include
#include
#include
using namespace std;
// Variables for username and password to the program
string usernameCorrect = "UserConnect";
string passwordCorrect = "Password123";
string usernameInput = "";
string passwordInput = "";
// Variables for arrays
string firstnameArray[50];
string lastnameArray[50];
string numberArray[50];
string zipcodeArray[50];
string ssnArray[50];
// Variable for array size
int arraySize = 0;
// Variables for sorting and searching database
string tempFirstName = "";
string tempLastName = "";
string tempNumber = "";
string tempZipCode = "";
string tempSSN = "";
string soughtValue = "";
int index = -1;
int pass = -1;
void getUserPassword() {
// Get username and password from the user
cout << "Please enter username: ";
cin >> usernameInput;
cout << "Please enter password: ";
cin >> passwordInput;
}
void userAdd() {
// Get how many contacts user wants to add
cout << "Please enter the number of contacts you want to add: ";
cin >> arraySize;
// Get contact info from user
cout << "Please enter contacts first name, last name, phone number, "
<< "zip code, and last 4 digits of their SSN." << endl;
for (int i = 1; i < arraySize + 1; i++) {
cout << "Please enter conact's first name " << i << ": ";
cin >> firstnameArray[i];
cout << "Please enter contact's last name " << i << ": ";
cin >> lastnameArray[i];
cout << "Please enter contact's phone number " << i << ": ";
cin >> numberArray[i];
cout << "Please enter contact's zip code " << i << ": ";
cin >> zipcodeArray[i];
cout << "Please enter the last 4 digits of contact's " << i << " SSN: ";
cin >> ssnArray[i];
}
}
void ascendingOrder() {
// Sort array in ascending order based on first name
for (pass = 0; pass < arraySize; pass++) {
for (index = 0; index < arraySize - pass; index++) {
if (firstnameArray[index] > firstnameArray[index + 1]) {
tempFirstName = firstnameArray[index];
firstnameArray[index] = firstnameArray[index + 1];
firstnameArray[index + 1] = tempFirstName;
tempLastName = lastnameArray[index];
lastnameArray[index] = lastnameArray[index + 1];
lastnameArray[index + 1] = tempLastName;
tempNumber = numberArray[index];
numberArray[index] = numberArray[index + 1];
numberArray[index + 1] = tempNumber;
tempZipCode = zipcodeArray[index];
zipcodeArray[index] = zipcodeArray[index + 1];
zipcodeArray[index + 1] = tempZipCode;
tempSSN = ssnArray[index];
ssnArray[index] = ssnArray[index + 1];
ssnArray[index + 1] = tempSSN;
}
}
}
}
void printContent() {
// Display content of the array
for (int j = 1; j < arraySize + 1; j++) {
cout << setw(5) << j + 1 << ". " << "First & Last Name: " << setw(5)
<< firstnameArray[j] << " " << lastnameArray[j] << " | "
<< "Number: " << zipcodeArray[j] << " | " << "SSN: "
<< ssnArray[j] << endl;
}
}
void searchArray() {
// Get the search term
cout << "Please enter a first name to search for and press enter.";
cin >> soughtValue;
// Search the array
for (index = 0; index < arraySize; index++) {
if (firstnameArray[index] == soughtValue) {
break;
}
}
if (index > arraySize) {
cout << "The name " << soughtValue << " was not found." << endl;
} else {
cout << soughtValue << " has the info: " << "First & Last Name: "
<< setw(2) << firstnameArray[index] << " "
<< lastnameArray[index] << " | " << "Number: " << setw(2)
<< numberArray[index] << " | " << "Zip Code: " << setw(2)
<< zipcodeArray[index] << " | " << "SSN: " << ssnArray[index]
<< endl;
}
}
int main() {
// Call the username and password function
getUserPassword();
while (usernameInput == usernameCorrect && passwordInput == passwordCorrect) {
int choice;
while (1) {
cout << "Press 1 to add user(s): " << endl;
cout << "Press 2 to sort data in ascending order: " << endl;
cout << "press 3 to print data: " << endl;
cout << "Press 4 to search for a user by first name: " << endl;
cout << "Press 5 to end the program: " << endl;
cin >> choice;
switch (choice) {
case 1:
cin.ignore();
userAdd();
break;
case 2:
ascendingOrder();
break;
case 3:
printContent();
break;
case 4:
searchArray();
break;
case 5:
return 0;
break;
default:
;
}
}
}
if (usernameInput != usernameCorrect && passwordInput != passwordCorrect) {
cout << "Username and/or Password not found, please try again." << endl;
return 0;
}
}