Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

your program should include the following functions: 1. A function named readInput that returns a string containing the message from a file. The parameter should

your program should include the following functions: 1. A function named readInput that returns a string containing the message from a file. The parameter should be an fstream passed by reference. 2. A function named upperCase that returns nothing (void). The parameter should be one string containing the user entered message that gets modified to be all upper case letters. Hint: pass by reference. 3. A function named cipher that returns a string containing the fully encoded message. The parameter should be one string containing the uppercase user entered message. 4. A function named translateLetterKeyBoard that returns nothing (void). The parameter should be one char containing the letter to be modified, in accordance to the Keyboard cipher. Hint: pass by reference. 5. A function named translateLetterMorseCode that returns a string containing the character in morse code. The parameter should be one char containing the letter to be translated, in accordance to Morse code. 6. A function named printOutput that returns nothing (void). The parameters should be two strings, the original user entered message and the final encoded message. This function should print the output. As you introduce each function, replace the code in main() by calls to your new functions as appropriate. In particular, note that some of these new functions may be called from within the bodies of some of the other functions. Remember that this program was already working. You should not alter the output of the program in any way. Hopefully, once you are done it will be obvious to you that your revised code is simpler and easier to understand than the original. In real life, code that is easier to understand, is easier to get working in the first place, so you should try to develop the code in small, function-based chunks from the very beginning. To test your code you can always run inputs through the original .cpp and your own to compare the outputs.

#include  #include  using namespace std; int main() { cout << "Assignment 0- Combination Cipher "; //Prompt the user for a string string userInput =""; cout << "Enter the string you would like encoded: "; getline(cin, userInput); string tempMessage =userInput; //clean up the message and make all upper case for(int i = 0; i < tempMessage.size(); i++) tempMessage[i] = toupper(tempMessage[i]); //Encode the message through KeyBoard Cipher for(int i = 0; i < tempMessage.size(); i++){ char letter = tempMessage[i]; switch (letter){ case 'A': letter = 'Q'; break; case 'B': letter = 'W'; break; case 'C': letter = 'E'; break; case 'D': letter = 'R'; break; case 'E': letter = 'T'; break; case 'F': letter = 'Y'; break; case 'G': letter = 'U'; break; case 'H': letter = 'I'; break; case 'I': letter = 'O'; break; case 'J': letter = 'P'; break; case 'K': letter = 'A'; break; case 'L': letter = 'S'; break; case 'M': letter = 'D'; break; case 'N': letter = 'F'; break; case 'O': letter = 'G'; break; case 'P': letter = 'H'; break; case 'Q': letter = 'J'; break; case 'R': letter = 'K'; break; case 'S': letter = 'L'; break; case 'T': letter = 'Z'; break; case 'U': letter = 'X'; break; case 'V': letter = 'C'; break; case 'W': letter = 'V'; break; case 'X': letter = 'B'; break; case 'Y': letter = 'N'; break; case 'Z': letter = 'M'; break; default : break; } tempMessage[i] = letter; } //Encode the message through KeyBoard Cipher a second time for(int i = 0; i < tempMessage.size(); i++){ char letter = tempMessage[i]; switch (letter){ case 'A': letter = 'Q'; break; case 'B': letter = 'W'; break; case 'C': letter = 'E'; break; case 'D': letter = 'R'; break; case 'E': letter = 'T'; break; case 'F': letter = 'Y'; break; case 'G': letter = 'U'; break; case 'H': letter = 'I'; break; case 'I': letter = 'O'; break; case 'J': letter = 'P'; break; case 'K': letter = 'A'; break; case 'L': letter = 'S'; break; case 'M': letter = 'D'; break; case 'N': letter = 'F'; break; case 'O': letter = 'G'; break; case 'P': letter = 'H'; break; case 'Q': letter = 'J'; break; case 'R': letter = 'K'; break; case 'S': letter = 'L'; break; case 'T': letter = 'Z'; break; case 'U': letter = 'X'; break; case 'V': letter = 'C'; break; case 'W': letter = 'V'; break; case 'X': letter = 'B'; break; case 'Y': letter = 'N'; break; case 'Z': letter = 'M'; break; default : break; } tempMessage[i] = letter; } //encode the message through Morse code string encodedMessage = ""; for(int i = 0; i < tempMessage.size(); i++){ string output = ""; char letter = tempMessage[i]; switch(letter){ case 'A': output = ".- "; break; case 'B': output = "-... "; break; case 'C': output = "-.-. "; break; case 'D': output = "-.. "; break; case 'E': output = ". "; break; case 'F': output = "..-. "; break; case 'G': output = "--. "; break; case 'H': output = ".... "; break; case 'I': output = ".. "; break; case 'J': output = ".--- "; break; case 'K': output = "-.- "; break; case 'L': output = ".-.. "; break; case 'M': output = "-- "; break; case 'N': output = "-. "; break; case 'O': output = "--- "; break; case 'P': output = ".--. "; break; case 'Q': output = "--.- "; break; case 'R': output = ".-. "; break; case 'S': output = "... "; break; case 'T': output = "- "; break; case 'U': output = "..- "; break; case 'V': output = "...- "; break; case 'W': output = ".-- "; break; case 'X': output = ".-- "; break; case 'Y': output = "-.-- "; break; case 'Z': output = "--.. "; break; case ' ': output = " "; break; case '1': output = ".---- "; break; case '2': output = "..--- "; break; case '3': output = "...-- "; break; case '4': output = "....- "; break; case '5': output = "..... "; break; case '6': output = "-.... "; break; case '7': output = "--... "; break; case '8': output = "---.. "; break; case '9': output = "----. "; break; case '0': output = "----- "; break; default: output = letter; } encodedMessage += output; } //Print the output cout << endl << "You Gave me the Message: " << endl << userInput << endl << endl << "Your Message Encoded is: " << endl << encodedMessage << endl; return 0; }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Advances In Spatial Databases 2nd Symposium Ssd 91 Zurich Switzerland August 1991 Proceedings Lncs 525

Authors: Oliver Gunther ,Hans-Jorg Schek

1st Edition

3540544143, 978-3540544142

More Books

Students also viewed these Databases questions