1. // Programa creado por Rollth
  2. // Cifrado Cesar 1.3
  3. // 12/2/2014
  4. #include <iostream.h>// Añade la libreria iostream.h (Para el cout)
  5. #include <stdio.h> // Introduce la libreria stdio.h para poder poner espacios en el codigo.
  6. using namespace std;// Usa el espacio estandar de la libreria iostream para inicializar cin y cout
  7. int main()// Empieza a correr el programa
  8. {
  9. int n,m,opcion,final;// Crea dos variables "n" y "m". Además de otra variable opcion y final
  10. final = 0;// Le da al valor de final un cero
  11. char codigo[10];// Crea la variable del cifrado
  12. cout << "------------------------------";// Presentacion del programa
  13. cout << endl;// Pasa la linea
  14. cout << ". Cifrado Cesar 1.3 .";// Presentacion del programa
  15. cout << endl;// Pasa la linea
  16. cout << ". Por Rollth .";// Presentacion del programa
  17. cout << endl;// Pasa la linea
  18. cout << "------------------------------";// Fin presentacion del programa
  19. while (final == 0)// Mientras final sea igual a "0"
  20. {
  21. cout << endl;// Pasa la linea
  22. cout << "Si quieres cifrar una frase pulsa 1";// Manda el mensaje en rojo
  23. cout << endl;// Pasa de linea
  24. cout << "Si quieres descifrar pulsa 2";// Manda el mensaje en rojo
  25. cout << endl;// Pasa de linea
  26. cout << "Si quieres descifrar sabiendo clave pulsa 3";// Manda mensaje en rojo
  27. cout << endl;// Pasa la linea
  28. cin >> opcion;// El usuario escoge la opcion
  29. if (opcion == 1)// Si la opcion 1
  30. {
  31. cout << "Introduce el cifrado";// Manda el mensaje en rojo
  32. cout << endl;// Pasa la linea
  33. cin >> codigo;// Para escribir el codigo
  34. cout << "Introduce la clave";// El usuario escoge la clave
  35. cout << endl;// Pasa la linea
  36. cin >> m;// El usuario escoge el valor de la "m"
  37. n = 0;// Le da el valor de 1 a la "n"
  38. while (n != m)
  39. {
  40. n += 1;
  41. if (codigo[0] >= 'a' && codigo[0] < 'z')// Si el codigo esta entre "a" y "z"
  42. {
  43. codigo[0] += 1;// Se suma 1
  44. }
  45. else if(codigo[0] == 'z')// Pero si es "z"
  46. {
  47. codigo[0] = 'a';// Se convierte en "a"
  48. }
  49. if(codigo[1] >= 'a' && codigo[1] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  50. {
  51. codigo[1] += 1;
  52. }
  53. else if(codigo[1] == 'z')
  54. {
  55. codigo[1] = 'a';
  56. }
  57. if(codigo[2] >= 'a' && codigo[2] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  58. {
  59. codigo[2] += 1;
  60. }
  61. else if(codigo[2] == 'z')
  62. {
  63. codigo[2] = 'a';
  64. }
  65. if(codigo[3] >= 'a' && codigo[3] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  66. {
  67. codigo[3] += 1;
  68. }
  69. else if(codigo[3] == 'z')
  70. {
  71. codigo[3] = 'a';
  72. }
  73. if(codigo[4] >= 'a' && codigo[4] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  74. {
  75. codigo[4] += 1;
  76. }
  77. else if(codigo[4] == 'z')
  78. {
  79. codigo[4] = 'a';
  80. }
  81. if(codigo[5] >= 'a' && codigo[5] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  82. {
  83. codigo[5] += 1;
  84. }
  85. else if(codigo[5] == 'z')
  86. {
  87. codigo[5] = 'a';
  88. }
  89. if(codigo[6] >= 'a' && codigo[6] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  90. {
  91. codigo[6] += 1;
  92. }
  93. else if(codigo[6] == 'z')
  94. {
  95. codigo[6] = 'a';
  96. }
  97. if(codigo[7] >= 'a' && codigo[7] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  98. {
  99. codigo[7] += 1;
  100. }
  101. else if(codigo[7] == 'z')
  102. {
  103. codigo[7] = 'a';
  104. }
  105. if(codigo[8] >= 'a' && codigo[8] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  106. {
  107. codigo[8] += 1;
  108. }
  109. else if(codigo[8] == 'z')
  110. {
  111. codigo[8] = 'a';
  112. }
  113. if(codigo[9] >= 'a' && codigo[9] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  114. {
  115. codigo[9] += 1;
  116. }
  117. else if(codigo[9] == 'z')
  118. {
  119. codigo[9] = 'a';
  120. }
  121. if(codigo[10] >= 'a' && codigo[10] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  122. {
  123. codigo[10] += 1;
  124. }
  125. else if(codigo[10] == 'z')
  126. {
  127. codigo[10] = 'a';
  128. }
  129. cout << endl;
  130. }
  131. cout << codigo;
  132. cout << endl;
  133. }
  134. else if (opcion == 2)// En el otro caso
  135. {
  136. cout << "Introduce el cifrado";// Manda el mensaje en rojo
  137. cout << endl;// Pasa la linea
  138. cin >> codigo;// Para escribir el codigo
  139. n = 0;// Le da valor 1 a la "n"
  140. m = 25;// Le da el valor de 25 a la "m"
  141. while (n != m)
  142. {
  143. n += 1;
  144. if (codigo[0] >= 'a' && codigo[0] < 'z')// Si el codigo esta entre "a" y "z"
  145. {
  146. codigo[0] += 1;// Se suma 1
  147. }
  148. else if(codigo[0] == 'z')// Pero si es "z"
  149. {
  150. codigo[0] = 'a';// Se convierte en "a"
  151. }
  152. if(codigo[1] >= 'a' && codigo[1] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  153. {
  154. codigo[1] += 1;
  155. }
  156. else if(codigo[1] == 'z')
  157. {
  158. codigo[1] = 'a';
  159. }
  160. if(codigo[2] >= 'a' && codigo[2] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  161. {
  162. codigo[2] += 1;
  163. }
  164. else if(codigo[2] == 'z')
  165. {
  166. codigo[2] = 'a';
  167. }
  168. if(codigo[3] >= 'a' && codigo[3] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  169. {
  170. codigo[3] += 1;
  171. }
  172. else if(codigo[3] == 'z')
  173. {
  174. codigo[3] = 'a';
  175. }
  176. if(codigo[4] >= 'a' && codigo[4] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  177. {
  178. codigo[4] += 1;
  179. }
  180. else if(codigo[4] == 'z')
  181. {
  182. codigo[4] = 'a';
  183. }
  184. if(codigo[5] >= 'a' && codigo[5] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  185. {
  186. codigo[5] += 1;
  187. }
  188. else if(codigo[5] == 'z')
  189. {
  190. codigo[5] = 'a';
  191. }
  192. if(codigo[6] >= 'a' && codigo[6] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  193. {
  194. codigo[6] += 1;
  195. }
  196. else if(codigo[6] == 'z')
  197. {
  198. codigo[6] = 'a';
  199. }
  200. if(codigo[7] >= 'a' && codigo[7] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  201. {
  202. codigo[7] += 1;
  203. }
  204. else if(codigo[7] == 'z')
  205. {
  206. codigo[7] = 'a';
  207. }
  208. if(codigo[8] >= 'a' && codigo[8] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  209. {
  210. codigo[8] += 1;
  211. }
  212. else if(codigo[8] == 'z')
  213. {
  214. codigo[8] = 'a';
  215. }
  216. if(codigo[9] >= 'a' && codigo[9] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  217. {
  218. codigo[9] += 1;
  219. }
  220. else if(codigo[9] == 'z')
  221. {
  222. codigo[9] = 'a';
  223. }
  224. if(codigo[10] >= 'a' && codigo[10] < 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  225. {
  226. codigo[10] += 1;
  227. }
  228. else if(codigo[10] == 'z')
  229. {
  230. codigo[10] = 'a';
  231. }
  232. cout << codigo;
  233. cout << endl;
  234. }
  235. }
  236. else
  237. { cout << "Introduce el cifrado";// Manda el mensaje en rojo
  238. cout << endl;// Pasa la linea
  239. cin >> codigo;// Para escribir el codigo
  240. cout << "Introduce la clave";// El usuario escoge la clave
  241. cout << endl;// Pasa la linea
  242. cin >> m;// El usuario escoge el valor de la "m"
  243. n = 0;// Le da el valor de 1 a la "n"
  244. while (n != m)
  245. {
  246. n += 1;
  247. if (codigo[0] > 'a' && codigo[0] <= 'z')// Si el codigo esta entre "a" y "z"
  248. {
  249. codigo[0] += (-1);// Se suma 1
  250. }
  251. else if(codigo[0] == 'a')// Pero si es "z"
  252. {
  253. codigo[0] = 'z';// Se convierte en "a"
  254. }
  255. if(codigo[1] > 'a' && codigo[1] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  256. {
  257. codigo[1] += (-1);
  258. }
  259. else if(codigo[1] == 'a')
  260. {
  261. codigo[1] = 'z';
  262. }
  263. if(codigo[2] > 'a' && codigo[2] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  264. {
  265. codigo[2] += (-1);
  266. }
  267. else if(codigo[2] == 'a')
  268. {
  269. codigo[2] = 'z';
  270. }
  271. if(codigo[3] > 'a' && codigo[3] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  272. {
  273. codigo[3] += (-1);
  274. }
  275. else if(codigo[3] == 'a')
  276. {
  277. codigo[3] = 'z';
  278. }
  279. if(codigo[4] > 'a' && codigo[4] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  280. {
  281. codigo[4] += (-1);
  282. }
  283. else if(codigo[4] == 'a')
  284. {
  285. codigo[4] = 'z';
  286. }
  287. if(codigo[5] > 'a' && codigo[5] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  288. {
  289. codigo[5] += (-1);
  290. }
  291. else if(codigo[5] == 'a')
  292. {
  293. codigo[5] = 'z';
  294. }
  295. if(codigo[6] > 'a' && codigo[6] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  296. {
  297. codigo[6] += -(1);
  298. }
  299. else if(codigo[6] == 'a')
  300. {
  301. codigo[6] = 'z';
  302. }
  303. if(codigo[7] > 'a' && codigo[7] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  304. {
  305. codigo[7] += (-1);
  306. }
  307. else if(codigo[7] == 'a')
  308. {
  309. codigo[7] = 'z';
  310. }
  311. if(codigo[8] > 'a' && codigo[8] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  312. {
  313. codigo[8] += (-1);
  314. }
  315. else if(codigo[8] == 'a')
  316. {
  317. codigo[8] = 'z';
  318. }
  319. if(codigo[9] > 'a' && codigo[9] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  320. {
  321. codigo[9] += (-1);
  322. }
  323. else if(codigo[9] == 'a')
  324. {
  325. codigo[9] = 'z';
  326. }
  327. if(codigo[10] > 'a' && codigo[10] <= 'z')// Si el codigo esta entre "a" y "z",Se suma 1,Pero si es "z",Se convierte en "a"
  328. {
  329. codigo[10] += (-1);
  330. }
  331. else if(codigo[10] == 'a')
  332. {
  333. codigo[10] = 'z';
  334. }
  335. cout << endl;
  336. }
  337. cout << codigo;
  338. cout << endl;
  339. }
  340. cout << "Si quieres terminar pulsa 1, si quieres continuar pulsa 0";// Manda el mensaje en rojo
  341. cout << endl; // Pasa de linea
  342. cin >> final;// Pide al usuario que le diga si quiere terminar o no
  343. }
  344. system("PAUSE");// Termina el programa
  345. }