Skocz do zawartości

Modulo w szyfrze cezara


Sutikku

Rekomendowane odpowiedzi

Hej. Będę startował w jakimś tam konkursie i widzę, że trzeba mieć wiedzę na temat Szyfru Cezara i ROT13. Ale zauważyłem, że zawsze korzysta się z funkcji modulo np.

for(int i=0;i<dl;i++)
      tab[i] = (tab[i] - 65 + klucz)%26 + 65;

O ile się nie myle '%' to modulo, tak?

Lub to

    klucz = klucz % ilosc_liter;

Nie rozumiem tego i proszę o pomoc.

Odnośnik do komentarza
Udostępnij na innych stronach

Modulo to reszta z dzielenia całkowitego np.: 5/2=2(dzielenie calkowite np.: na intach nie daje cyfr po przecinku), ale 5%2=1, bo 2*2=4, a 5-4=1. To nic innego jak w podstawóce nie znałeś ułamków i w dzieleniu 5/2 pisałeś 2 i 1 reszty. Po prostu używając modulo otrzymujesz tą resztę. Rozumies? Ogółem pogoogluj, jest o tym mnóstwo iformacji w necie ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Bo masz 26 liter w alfabecie, a jak otrzymasz np.: 27 to wyjdziesz poza alfabet. Dlatego po 26 literze musisz wrocić do 1szej litery. Np. 27%26=1 czyli wracasz do A, czyli do jedynki(bo 27/26 to 1 i 1 reszty)? Rozumiesz mniej więcej?

@e: inny przykład 28%26 da Ci już B(bo wynik to 2), bo 28 litery nie ma ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Spoko, ja zaczynałem dziwnie, bo od C++ przed GMem(większość zaczyna od GM i przesiada się np.: do C#, C++) i też tego wszystkiego się uczyłem i też byłem namawiany do wzięcia udziału w takim konkursie, ale przez moje lenistwo nie wystartowałem, ale Tobie życzę, żeby Ci się udało w przeciwieństwie do mnie :)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...