Code:I don't know if i did it right or not but can anyone help me with this code? You must output: HELLOWORLDYOUARECRAZY mjqqtctwqietzfwjhwffe THIS IS MY CODE: #include <iostream> #include <cstring> #include <cctype> using namespace std; /* * Description: This program operates on a command-line argument. It includes functions * that implement a simple Caesar or Substitution cipher. Given key k and message m, the Caesar * cipher will "shift" each letter in m k letters to the right using a standard english alphabet. * The main program will take in a operation int, a key, and a message (either plaintext or * encrypted. It will then output the message after it has been encrypted (operation 0) or * decrypted (operation 1). */ // Function prototypes void encrypt (int, char[]); void decrypt (int, char[]); char transform (char, int); int main(int argc, char *argv[]) { int n,key; /* * argv[0] is the name of the program * argv[1] is the operation (encrypt 0 or decrypt 1) * argv[2] is the key * argv[3] is an array holding the message you want the program to operator on */ // First check to see if we received the correct number of arguments // using argc. If not, print a "Usage" statement and return if(argc != 4) { cout<<"Expected an integer and a string "<<endl; return 0; } // Print original message supplied by user cout<<"Print original message: "<<endl; cout<<argv[3]<<endl; // Convert the operation number and the numeric key to an integer n=atoi(argv[1]); key=atoi( argv[2]); if(n==0) encrypt(key,argv[3]); else decrypt(key,argv[3]); // Call the appriopriate function based on the operation // Print new message cout<<"New message: "<<endl; cin>>argv[3]; //system("PAUSE"); return 0; } /* * Function name: transform * Description: This function transforms (or shifts) <char> ch to another character * <int> key letters away in the standard alphabet. * Parameters: * ch - a single character in the alphabet * key - an integer that holds the number of shifts * Return value: returns a "transformed" char */ char transform(char ch, int key) { // Array alpha contains the entire alphabet char alpha[] = "abcdefghijklmnopqrstuvwxyz"; // Convert ch to lowercase so it can be matched to something in the alphabet char low_case = tolower(ch); // Loop until we locate the the letter or we reached until the end of the alphabet int i=0; while((low_case != alpha[i]) && (i < 26)) i++; // Handle the occurance when the message contains a character not in the alphabet if (i > 25) return ch; // Handle the case where the key could be larger than the number of characters in the alphabet int new_key = key % 25; // If we have a letter at the end of the alphabet and the key takes us off the end // then we need start at the beginning if (new_key + i > 25) { return alpha[(new_key + i) % 25]; } else { return alpha[new_key + i]; } } /* * Function name: encrypt * Description: This function takes plain text <char> message and a <int> key and executes * the Caesar ciphter on the entire message using the transform function. * Parameters: * key - the number of shifts to completed the cipher * message - the message to be encrypted * Return value: none */ void encrypt(int key, char mess[]) {int i=0; while(mess[i]!='\0') cout<<transform(mess[i++],key); cout<<endl; return; } /* * Function name: decrypt * Description: This function takes encrypted text <char> message and a <int> key and executes * the Caesar ciphter on the entire message using the transform function. * Parameters: * key - the number of shifts to completed the cipher * message - the message to be encrypted * Return value: none */ void decrypt(int key, char mess[]) {int i=0; while(mess[i]!='\0') cout<<transform(mess[i++],-key); cout<<endl; return; }