Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.33 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <iomanip>
  4.  
  5. using namespace std;
  6.  
  7. string getString();
  8. int getKey();
  9. string rotateWord(string myString, int key);
  10. string derotateWord(string myString, int key);
  11. string rotateChar(string myString, int key);
  12. string derotateChar(string myString, int key);
  13.  
  14. int main()
  15. {
  16.  
  17. bool cont = false;
  18. string myString;
  19. int key, menu;
  20.  
  21. do
  22. {
  23.  
  24. cout << "1.Rotate Word" << endl;
  25. cout << "2.Derotate Word" << endl;
  26. cout << "3.Rotate Character" << endl;
  27. cout << "4.Derotate Character" << endl;
  28. cout << "5.Exit" << endl;
  29.  
  30. cin >> menu;
  31.  
  32. switch(menu)
  33. {
  34.  
  35. case 1:
  36.  
  37. break;
  38. case 2:
  39.  
  40. break;
  41. case 3:
  42. myString = getString();
  43. key = getKey();
  44. rotateChar(myString, key);
  45. cout << "string rotateWord(string myString, int key)
  46. {
  47.  
  48. key = key % myString.length();
  49.  
  50. char temp;
  51.  
  52. for(int j = 0; j < key; j++)
  53. {
  54.  
  55. temp = myString[myString.length() - 1];
  56.  
  57. for(int i = myString.length() - 1; i >= 0; i--)
  58. {
  59.  
  60. if ((i - 1) > 0)
  61. {
  62.  
  63. myString[i] = myString[i - 1]
  64.  
  65. }
  66. else
  67. {
  68.  
  69. myString[i] = temp;
  70.  
  71. }
  72.  
  73. }
  74.  
  75. }
  76.  
  77. return myString;
  78.  
  79. }Here is your derotated word: " << myString << endl;
  80. break;
  81. case 4:
  82. myString = getString();
  83. key = getKey();
  84. derotateChar(myString, key);
  85. cout << "Here is your derotated word: " << myString << endl;
  86. break;
  87. case 5:
  88. cont = true;
  89. cout << "Goodbye!";
  90. break;
  91. default:
  92. cout << "You did not enter a valid menu option." << endl;
  93. break;
  94.  
  95. }
  96.  
  97.  
  98. }
  99. while(!cont)
  100. {
  101.  
  102.  
  103.  
  104. }
  105.  
  106.  
  107. return 0;
  108.  
  109. }
  110.  
  111. string getString()
  112. {
  113.  
  114. string myString;
  115.  
  116. cout << "What word would you like to encrypt?" << endl;
  117. cin >> myString;
  118.  
  119. return myString;
  120.  
  121. }
  122.  
  123. int getKey()
  124. {
  125.  
  126. int key;
  127.  
  128. cout << "How many times do you want to rotate your word?" << endl;
  129. cin >> key;
  130.  
  131. return key;
  132.  
  133. }
  134.  
  135. string rotateWord(string myString, int key)
  136. {
  137.  
  138. key = key % myString.length();
  139.  
  140. char temp;
  141.  
  142. for(int j = 0; j < key; j++)
  143. {
  144.  
  145. temp = myString[myString.length() - 1];
  146.  
  147. for(int i = myString.length() - 1; i >= 0; i--)
  148. {
  149.  
  150. if ((i - 1) > 0)
  151. {
  152.  
  153. myString[i] = myString[i - 1]
  154.  
  155. }
  156. else
  157. {
  158.  
  159. myString[i] = temp;
  160.  
  161. }
  162.  
  163. }
  164.  
  165. }
  166.  
  167. return myString;
  168.  
  169. }
  170.  
  171. string derotateWord(string myString, int key)
  172. {
  173.  
  174.  
  175. return myString;
  176.  
  177. }
  178.  
  179. string rotateChar(string myString, int key)
  180. {
  181.  
  182. for(int i = 0; i < myString.length(); i++)
  183. {
  184.  
  185. myString[i] = myString[i] + key;
  186.  
  187. }
  188.  
  189. return myString;
  190.  
  191.  
  192. }
  193.  
  194. string derotateChar(string myString, int key)
  195. {
  196.  
  197. for(int i = 0; i < myString.length(); i++)
  198. {
  199.  
  200. myString[i] = myString[i] - key;
  201.  
  202. }
  203.  
  204. return myString;
  205.  
  206. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement