student
   

Program I - Mały kryptograf

Ogólnie:
Napisać w języku Java program deszyfrujący wiadomości podane na wejściu. Kodowanie i dekodowanie w tym rodzaju szyfru odbywa się przy pomocy kwadratowej maski NxN pól, więc nazwijmy go szyfrem KMN :). (Dla maski 4x4 będzie to np. szyfr KM4)

Szczegóły deszyfrowania:
Aby odkodować wiadomość np: YBNCZYIKKAOAŁTRO
trzeba posiadać maskę - jest to kwadrat z wyciętymi okienkami. W naszym przykładzie maska wygląda tak:

    
    
    
    
Tekst do deszyfrowania wpisujemy wiersz po wierszu w taki sam kwadrat (bez dziurek), tak aby w każdym jego polu pojawiła się jedna litera:
YBNC
ZYIK
KAOA
ŁTRO
Teraz przykrywamy tekst maską i odczytujemy literki wierszami od góry:
BIAŁ...
 B  
  I 
   A
Ł   
Następnie obracamy maskę o 90o zgodnie z ruchem wskazówek zegarka i znów odczytujemy:
...YKOT...
Y   
   K
  O 
 T  
I jeszcze raz:
...CZAR...
   C
Z   
 A  
  R 
I jeszcze raz:
...NYKO
  N 
 Y  
K   
   O
Wstawiamy spacje i mamy hasło (prawie całe :)
"Czarny kot biały kot" :)

Szczegóły programu:
W 1 wersji:
  • Program powinien deszyfrować szyfr MK8.
  • Dane podawane są przez linię poleceń gdzie parametr -m[maska], a -w[wiadomość]. Dla naszego przykładu -m0100001000011000 -wybnczyikkaoałtro
  • Program powinien szyfrować szyfrem Mk8 przy użyciu tych samych parametrów
  • Wynik prezentujemy na standardowym wyjściu
  • Docelowo program ma obsługiwać dowolny rozmiar tablicy kodującej czyli szyfr MKN. Przy czym wymiar podajemy jako parametr -n[wymiar] np. -n8.
    Powodzenia!
  •  

    Konsultacje  

    Ważne info:
    Koło algorytmiczne
    spotkania w PON o 12.00h sala sanów

    Ważne info:
    Zawody algorytmiczne
    już 28 października 2005 - jedź z nami!

    Chcę otrzymywać newsy:
    Podaj swój mail:

     

     


    student site & engine by DONE

     

    wszelkie pytania proszę kierować pod adres r.papis@done.pl
     

     

    DONE