In the event of technical difficulties with Szkopuł, please contact us via email at szkopul@fri.edu.pl.
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.
W tym zadaniu będziesz miał zaimplementować znany algorytm szyfrowania i odszyfrowywania
danych, który był już używany w czasach Juliusza Cezara. Szyfrowanie tekstu polega na szyfrowaniu
kolejnych jego literek (załóżmy, że pozostałe znaki pozostawiamy bez zmian).
Każda literka zostaje w nim zamieniona w -tą następną w alfabecie (
jest stałą szyfrowania), przy czym jeżeli taka nie istnieje (wychodzimy za z), to
odliczanie jest kontynuowane z powrotem od a.
Dla przykładu, jeżeli , to a przechodzi na f, b na g, c na h, ...,
u na z, v na a, w na b, x na c, y na d, wreszcie z na e (podobnie dla dużych liter).
Napisz program, który:
Pierwszy wiersz wejścia zawiera jedno słowo "szyfruj" lub "odszyfruj".
Drugi wiersz wejścia zawiera stałą
(
). Trzeci i ostatni wiersz wejścia
zawiera tekst, złożony wyłącznie z liter (małych bądź dużych) i/lub znaków interpunkcyjnych
(bez przejść do nowej linii). Tekst będzie zawierał co najmniej jeden znak
i co najwyżej
znaków.
Pierwszy i jedyny wiersz wyjścia powinien zawierać tekst po zaszyfrowaniu bądź odszyfrowaniu.
Dla danych wejściowych:
szyfruj 5 Szyfr Cezara - jest skuteczny!
poprawnym wynikiem jest:
Xedkw Hjefwf - ojxy xpzyjhesd!
a dla danych wejściowych:
odszyfruj 5 Xedkw Hjefwf - ojxy xpzyjhesd!
poprawnym wynikiem jest:
Szyfr Cezara - jest skuteczny!