#include <iostream>
using namespace std;
// zdefiniuj funkcję
char szyfruj_znak(char znak, int klucz) {
int litera_alfabetu = int(znak) - 97;
int kod_nowej_litery = (litera_alfabetu + klucz) % 26;
return char(kod_nowej_litery + 97);
}
// zdefiniuj funkcję
string szyfruj2(string tekst, int klucz1, int klucz2) {
string wynik = "";
klucz1 = klucz1 % 26;
klucz2 = klucz2 % 26;
for (int i = 0; i < tekst.size(); i++) {
if (i % 2 == 0)
wynik += szyfruj_znak(tekst[i], klucz1);
else
wynik += szyfruj_znak(tekst[i], klucz2);
}
return wynik;
}
int main() {
cout << szyfruj2("poufnytekst", 3, 10) << endl;
cout << szyfruj2("poczekajnamnie", 123, 5) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKLy8gemRlZmluaXVqIGZ1bmtjasSZCmNoYXIgc3p5ZnJ1al96bmFrKGNoYXIgem5haywgaW50IGtsdWN6KSB7CiAgICBpbnQgbGl0ZXJhX2FsZmFiZXR1ID0gaW50KHpuYWspIC0gOTc7IAogICAgaW50IGtvZF9ub3dlal9saXRlcnkgPSAobGl0ZXJhX2FsZmFiZXR1ICsga2x1Y3opICUgMjY7IAogICAgcmV0dXJuIGNoYXIoa29kX25vd2VqX2xpdGVyeSArIDk3KTsgCn0KCi8vIHpkZWZpbml1aiBmdW5rY2rEmQpzdHJpbmcgc3p5ZnJ1ajIoc3RyaW5nIHRla3N0LCBpbnQga2x1Y3oxLCBpbnQga2x1Y3oyKSB7CiAgICBzdHJpbmcgd3luaWsgPSAiIjsKCiAgICBrbHVjejEgPSBrbHVjejEgJSAyNjsKICAgIGtsdWN6MiA9IGtsdWN6MiAlIDI2OwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgdGVrc3Quc2l6ZSgpOyBpKyspIHsKICAgICAgICBpZiAoaSAlIDIgPT0gMCkKICAgICAgICAgICAgd3luaWsgKz0gc3p5ZnJ1al96bmFrKHRla3N0W2ldLCBrbHVjejEpOwogICAgICAgIGVsc2UKICAgICAgICAgICAgd3luaWsgKz0gc3p5ZnJ1al96bmFrKHRla3N0W2ldLCBrbHVjejIpOwogICAgfQoKICAgIHJldHVybiB3eW5pazsKfQoKaW50IG1haW4oKSB7CiAgICBjb3V0IDw8IHN6eWZydWoyKCJwb3Vmbnl0ZWtzdCIsIDMsIDEwKSA8PCBlbmRsOwogICAgY291dCA8PCBzenlmcnVqMigicG9jemVrYWpuYW1uaWUiLCAxMjMsIDUpIDw8IGVuZGw7CiAgICByZXR1cm4gMDsKfQ==