fork download
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. const int ALPHABET_SIZE = 'Z' - 'A' + 1;
  7. const int CEZAR_SHIFT = 3;
  8.  
  9. // dziala tylko dla DUZYCH liter
  10. char cezar_encode(char znak)
  11. {
  12. return 'A' + ((znak - 'A' + CEZAR_SHIFT) % ALPHABET_SIZE);
  13. }
  14.  
  15. char cezar_decode(char znak)
  16. {
  17. return 'A' + ((ALPHABET_SIZE + znak - 'A' - CEZAR_SHIFT) % ALPHABET_SIZE);
  18. }
  19.  
  20. int main()
  21. {
  22.  
  23. string tekst;
  24. int dlugosc,i;
  25.  
  26. tekst = "ATOJESTTESTZ";
  27.  
  28. dlugosc=tekst.length();
  29.  
  30. for(i=0;i<dlugosc;i++)
  31. {
  32. tekst[i] = cezar_encode(tekst[i]);
  33. }
  34.  
  35. cout << "Zakodowane: " << tekst << endl;
  36.  
  37. for(i=0;i<dlugosc;i++)
  38. {
  39. tekst[i] = cezar_decode(tekst[i]);
  40. }
  41.  
  42. cout << "Odkodowane: " << tekst << endl;
  43.  
  44. return 0;
  45. }
  46.  
Success #stdin #stdout 0.02s 2812KB
stdin
Standard input is empty
stdout
Zakodowane: DWRMHVWWHVWC
Odkodowane: ATOJESTTESTZ