#include<iostream>
#include<istream>
#include<cctype>
using namespace std;
int main()
{
const int OFFSET = 3;
string tekst;
char c;
cout << "Wprowadz tekst: ";
getline(cin, tekst);
cout << "\nOryginalny tekst: " << tekst;
for (int i = 0, epos = tekst.length(); i < epos; i++)
{
c = tekst[i];
if (islower(c)) {
c = 'a' + (c - 'a' + OFFSET) % ('z'-'a'+1);
tekst[i] = c;
} else if (isupper(c)) {
c = 'A' + (c - 'A' + OFFSET) % ('Z'-'A'+1);
tekst[i] = c;
}
}
cout << "\nZmieniony tekst: " << tekst;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGlzdHJlYW0+CiNpbmNsdWRlPGNjdHlwZT4KIAp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCmludCBtYWluKCkKewoJY29uc3QgaW50IE9GRlNFVCA9IDM7CiAgICBzdHJpbmcgdGVrc3Q7CiAgICBjaGFyIGM7CiAKICAgIGNvdXQgPDwgIldwcm93YWR6IHRla3N0OiAiOwogICAgZ2V0bGluZShjaW4sIHRla3N0KTsKICAgIGNvdXQgPDwgIlxuT3J5Z2luYWxueSB0ZWtzdDogIiA8PCB0ZWtzdDsKIAogICAgZm9yIChpbnQgaSA9IDAsIGVwb3MgPSB0ZWtzdC5sZW5ndGgoKTsgaSA8IGVwb3M7IGkrKykKICAgIHsKIAogICAgICAgICAgYyA9IHRla3N0W2ldOwogICAgICAgICAgaWYgKGlzbG93ZXIoYykpIHsKICAgICAgICAgICAgYyA9ICdhJyArIChjIC0gJ2EnICsgT0ZGU0VUKSAlICgneictJ2EnKzEpOwogICAgICAgICAgICB0ZWtzdFtpXSA9IGM7CiAgICAgICAgICB9IGVsc2UgaWYgKGlzdXBwZXIoYykpIHsKICAgICAgICAgICAgYyA9ICdBJyArIChjIC0gJ0EnICsgT0ZGU0VUKSAlICgnWictJ0EnKzEpOwogICAgICAgICAgICB0ZWtzdFtpXSA9IGM7CiAgICAgICAgICB9CiAgICB9CiAKICAgIGNvdXQgPDwgIlxuWm1pZW5pb255IHRla3N0OiAiIDw8IHRla3N0OwogCn0=