I recently wrote a program to do some cheesy decryption of my homework that my US history teacher gave us based on the Zimmerman Note. I thought up of making a two-dimensional array since that represented the key that he gave us and then assign each one a unique letter. Though it works, I'm looking for ways to code more efficiently, and with better design. Any tips on how to improve my code?
The following word:Code:#include <iostream> #include <string> using namespace std; int getGridNumber(char gridLetter) { switch (gridLetter) { case 'a': return 0; case 'd': return 1; case 'f': return 2; case 'g': return 3; case 'v': return 4; case 'x': return 5; default: return 0; } } string decode(string argv) { char grid[6][6]; char char1; char char2; string news; grid[0][0] = 'B'; grid[1][0] = 'I'; grid[2][0] = '3'; grid[3][0] = '7'; grid[4][0] = 'M'; grid[5][0] = 'U'; grid[0][1] = '2'; grid[1][1] = '9'; grid[2][1] = 'D'; grid[3][1] = 'H'; grid[4][1] = 'O'; grid[5][1] = 'V'; grid[0][2] = 'E'; grid[1][2] = 'N'; grid[2][2] = '4'; grid[3][2] = '8'; grid[4][2] = 'P'; grid[5][2] = 'W'; grid[0][3] = '5'; grid[1][3] = 'A'; grid[2][3] = 'F'; grid[3][3] = 'J'; grid[4][3] = 'Q'; grid[5][3] = 'X'; grid[0][4] = 'R'; grid[1][4] = '1'; grid[2][4] = '6'; grid[3][4] = '0'; grid[4][4] = 'S'; grid[5][4] = 'Y'; grid[0][5] = 'L'; grid[1][5] = 'C'; grid[2][5] = 'G'; grid[3][5] = 'K'; grid[4][5] = 'T'; grid[5][5] = 'Z'; for ( int i = 0; i < argv.size(); i+=2) { news = argv.substr( i,2 ); news.copy(&char1,1,0); news.copy(&char2,1,1); cout << grid[getGridNumber(char1)][getGridNumber(char2)]; } return news; } int main ( int argc, const char* argv[]) { if (argc < 2) { cout << "Type -help because you fail. E.G. for retards: DecodeHomework.exe -help" << endl; return 0; } else if (argv[1] == string("-d")) { decode(string(argv[2])); } else { cout << "Well it seems that you attempted to type something in the parameter slot be it wrong or right. Type -help n00b." << endl; } return 0; }
should give you:Code:fgafaaavxadgavxvadaddvdddvgavxvdxdvddfafdxgxgddgavfdvxvaafxgdadxvddxdavxxvaaavdavxdavvgddxavdgdxgxvxvdvfvvafdxavafvxdxvdfda fxavvvfavafvvvvvadgxvaxafdggxfxafavvadgdfvfaxvdvxxfdavxgdvaafxgdadxvdvfavafvfdgavafvxvdaxafdgxdafafvaaadgvvvvxvvddfvvgdvdavvxdfv dvxdadxafaaafavdfvvvxvdavfgfgxfdgvvgddadffxvxvddffddx
Code:FEBRUARY221917TOVONECKHARDTMEXICOCITYBRITISHCRACKTOPSECRETCODEUSPRESSMAYLEAKGERMANPLOTWITHMEXICOPREPARETOLEAVE EMBASSYONSHORTNOTICEBERNSTORFFWASHINGTONDC



LinkBack URL
About LinkBacks


