Sprawdź się
Zadanie 2.
Podpunkt 2.
Zaszyfrowane wiadomości z pierwszej części zadania okazały się bardzo łatwe do odszyfrowania. W związku z tym pracownik agencji wywiadowczej dostał zadanie, aby oprócz zaszyfrowania słów za pomocą szyfru Vigenère'a zastosował dodatkowe szyfrowanie.
Pracownik wymyślił, że słowa zostaną najpierw zaszyfrowane za pomocą szyfru Vigenère'a , a następnie za pomocą szyfru Cezara.
W pliku dane.txt
znajdują się słowa do zaszyfrowania, a obok każdego słowa jest napisana liczba, która oznacza wartość przesunięcia (klucz) szyfru Cezara.
Napisz program, który zaszyfruje zadane w pliku ciągi znaków za pomocą szyfru Vigenère'a , kluczem „KLUCZ”, a następnie za pomocą szyfru Cezara, według podanej w pliku wartości klucza. Wyniki należy zapisać do osobnego pliku.
Przykładowy ciąg znaków „GRAF” i klucz równy 4.
Wynik szyfrowania:
Dane zawarte w pliku tekstowym zostały umieszczone w tablicach i znajdują się w poniższych ćwiczeniach. Pamiętaj jednak, że rozwiązując zadania maturalne, musisz dokonać prawidłowego wczytania danych z pliku tekstowego do swojego programu.
Napisz program w języku C++, który zaszyfruje zadane w pliku ciągi znaków za pomocą szyfru Vigenère'a, kluczem „KLUCZ”, a następnie za pomocą szyfru Cezara, według podanej w pliku wartości klucza.
Specyfikacja:
Dane:
alfabet, tabela
– tablica znakówdane
– tablica łańcuchów znakówklucze
– tablica elementów typu int
Wynik:
Program na wyjściu standardowym zwróci zakodowane za pomocą szyfru Cezara łańcuchy znaków.
Przykładowe rozwiązanie zadania:
Napisz program w języku Java, który zaszyfruje zadane w pliku ciągi znaków za pomocą szyfru Vigenère'a, kluczem „KLUCZ”, a następnie za pomocą szyfru Cezara, według podanej w pliku wartości klucza.
Specyfikacja:
Dane:
alfabetLacinski, tabela
– tablica znakówdane
– tablica łańcuchów znakówklucze
– tablica elementów typu int
Wynik:
Program na wyjściu standardowym zwróci zakodowane za pomocą szyfru Cezara łańcuchy znaków.
Przykładowe rozwiązanie zadania:
Napisz program w języku Python, który zaszyfruje zadane w pliku ciągi znaków za pomocą szyfru Vigenère'a, kluczem „KLUCZ”, a następnie za pomocą szyfru Cezara, według podanej w pliku wartości klucza.
Specyfikacja:
Dane:
alfabet, tabela
– tablica znakówdane
– tablica łańcuchów znakówklucze
– tablica elementów typu int
Wynik:
Program na wyjściu standardowym zwróci zakodowane za pomocą szyfru Cezara łańcuchy znaków.
Przykładowe rozwiązanie zadania: