//============================================================= // CODE FOR PROBLEM #1 ON PAGE 282 (LEARN BY DOING) IS BELOW //============================================================= //#include "Header.h" // //void readData(string club_name[][31], string club_pres[][31], int num_stud[], float money[]) //Takes in user entered data and writes to arrays //{ // for (int i = 0; i < 10; i++) // { // cout << "\n\tEnter club " << i + 1 << " name: "; // getline(cin >> ws,club_name[i][0]); // // cout << "\n\tEnter club " << i + 1 << " president: "; // getline(cin >> ws,club_pres[i][0]); // // cout << "\n\tEnter club " << i + 1 << " number of students: "; // cin >> num_stud[i]; // // money[i] = 75 * num_stud[i]; // // cout << "\n\n~~~~~~~~~~~~~~~~~~~~" << endl; // } // //} // //void displayData(string club_name[][31], string club_pres[][31], int num_stud[], float money[]) // Displays the data from the arrays in an orderly fashion //{ // cout << "\n\nClub Name Club President # of Students Money"; // cout << "\n--------------------------------------------------------------------------------------------------\n"; // // for (int i = 0; i < 10; i++) // { // cout << left << setw(32) << club_name[i][0] // << left << setw(32) << club_pres[i][0] // << left << setw(18) << num_stud[i] // << "$" << left << money[i] << endl; // } //} //==================================================================== // CODE FOR PROBLEM #1 ON PAGE 292 (PROGRAMMING EXERCISES) IS BELOW //==================================================================== #include "Header.h" void displayMenu(int& menu_choice) //Displays menu choices and takes in user choice { do { cout << "\n\t\t=============================="; cout << "\n\t\t What would you like to do?"; cout << "\n\t\t=============================="; cout << "\n\n\t1) Test if a string is a palindrome"; cout << "\n\t2) Test if a string is all alphabetic characters"; cout << "\n\t3) Count the number of times a specific character appears in a string"; cout << "\n\t4) Exit"; cout << "\n\n\t\tMenu choice #: "; cin >> menu_choice; if (menu_choice < 1 || menu_choice > 4) { cout << "\n\nError: Invalid menu choice\n"; } } while (menu_choice < 1 || menu_choice > 4); } void processMenuChoice(int menu_choice) //Process menu choice, calls relevant function { switch (menu_choice) { case 1: { isPalindrome(); break; } case 2: { isAlphaStr(); break; } case 3: { countChar(); break; } case 4: { cout << "\n\t\t\t~ Goodbye! ~\n\n"; break; } } } void isPalindrome() //Checks whether or not a user input string is a palindrome { char string1[41]; char stringR[41]; int same = 2; cout << "\n\t\t---------------------------------------------------------"; cout << "\n\t\t Enter a string (up to 40 characters, spaces are okay)"; cout << "\n\t\t---------------------------------------------------------"; cin.ignore(numeric_limits::max(), '\n'); //****Ignores everything in the input buffer up to this point cout << "\n\tEnter string: "; cin.getline(string1, 41); strcpy_s(stringR, string1); _strrev(stringR); same = strcmp(string1, stringR); if (same == 0) { cout << "\n\tThe string is a palindrome!\n"; } else if (same == 1) { cout << "\n\tThe string is not a palindrome.\n"; } } void isAlphaStr() //Checks to see if a user input string contains all alphabetic characters or not, displays result { char string2[31]; int strLength = 0; int flag = 0; cout << "\n\t\t---------------------------------------------------"; cout << "\n\t\t Enter a string (up to 30 characters, no spaces)"; cout << "\n\t\t---------------------------------------------------"; cin.ignore(numeric_limits::max(), '\n'); //****Ignores everything in the input buffer up to this point cout << "\n\tEnter string: "; cin.getline(string2, 31); strLength = strlen(string2); for (int i = 0; i < strlength - 1; i++) { if (isalpha(string2)) { } } } void countChar() //Takes in a user input string and a character, counts the frequency of that character within the string, displays result { }