fork(1) download
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. string Cezar(string buf, string alf, int k)
  6. {
  7. string TC;
  8.  
  9. for (int j = 0; j < buf.length(); j++)
  10. {
  11. for (int i = 0; i < alf.length(); i++)
  12. {
  13. if (buf[j] == alf[i])
  14. {
  15. if (i + k >= alf.length())
  16. {
  17. TC += (alf[(i + k) % alf.length()]);
  18. }
  19. else
  20. {
  21. TC += ((alf[i + k])); break;
  22. }
  23.  
  24. }
  25. }
  26. }
  27. return TC;
  28. }
  29.  
  30. string UnCezar(string TC, string alf, int k)
  31. {
  32. string UnTC;
  33. for (int j = 0; j < TC.length(); j++)
  34. {
  35. for (int i = 0; i < alf.length(); i++)
  36. {
  37. if (TC[j] == alf[i])
  38. {
  39. if (i - k < 0)
  40. {
  41. UnTC += (alf[31+(i - k)]);
  42. }
  43. else
  44. {
  45. UnTC += ((alf[i - k])); break;
  46. }
  47.  
  48. }
  49. }
  50. }
  51. return UnTC;
  52. }
  53.  
  54. int main()
  55. {
  56. int k = 7;
  57. string alf = "abcdefghijklmnopqrstuvwxyz ,.?!";
  58. string buf;
  59. cout << "Vvodi stroku: ";
  60. getline (cin, buf);
  61. cout << buf << endl;
  62. string TC = Cezar(buf, alf, k);
  63. cout <<"Cezar style -> "<< TC << endl;
  64. string UnTC = UnCezar(TC, alf, k);
  65. cout <<"UnCezar style -> "<< UnTC << endl;
  66.  
  67. return 0;
  68. }
  69.  
Success #stdin #stdout 0s 4508KB
stdin
Standard input is empty
stdout
Vvodi stroku: 
Cezar style -> 
UnCezar style ->