Darmowe konto pozwoli wrócić do niego później.
Polecenie
Zadanie 6.2. (0–4)
W pliku dane_6_2.txt zapisano 3 000 szyfrogramów i odpowiadające im klucze szyfrujące. W każdym wierszu znajduje się jeden szyfrogram (zaszyfrowane słowo) i po pojedynczym znaku odstępu odpowiadający mu klucz (maksymalnie czterocyfrowa liczba).
Fragment pliku dane_6_2.txt:
BCYKUNCM 1718
YFOGNSKGYW 7580
WARDA 9334
Napisz program, który odszyfruje słowa zaszyfrowane podanymi kluczami. Wynik zapisz w pliku wyniki_6_2.txt: każde odszyfrowane słowo w osobnym wierszu, w porządku odpowiadającym kolejności szyfrogramów z pliku z danymi.
Darmowe konto pozwoli wrócić do niego później.
Uwaga:
Dla pierwszego szyfrogramu z pliku dane_6_2.txt (BCYKUNCM) wynikiem jest słowo ZAWISLAK.
Wyniki (przykładowe wiersze):
Wiersz 10: KREZEL
Wiersz 11: ANTOLAK
Wiersz 100: KWIATKOWSKI
Wiersz 453: LADA
Algorytm:
1. Wczytaj szyfrogram i klucz z pliku dane_6_2.txt
2. Dla każdego znaku w szyfrogramie odszyfruj, odejmując klucz (modulo 26)
3. Deszyfrowanie: nowy_kod = (szyfr_kod - 65 - k) mod 26 + 65, gdzie k = klucz mod 26
4. Zapisz odszyfrowane słowa w porządku wierszy z pliku wejściowego
za poprawny plik wynikowy.
za błędne dekodowanie jednej z liter alfabetu albo błędne rozwiązanie wynikające z błędu zawijania albo za błędne rozwiązanie wynikające z przyjęcia błędnej długości alfabetu (25).
za odpowiedź błędną albo za brak odpowiedzi.
Przy deszyfracji należy uwzględnić cykliczność alfabetu. Klucze mogą być duże (do 4 cyfry), dlatego wymagane jest zastosowanie operacji modulo 26. Nie przyznaje się 3 pkt i 1 pkt.
Ocena według schematu punktowania CKE, zwykle w 15–30 s
Dowiedz się, ile punktów naprawdę zdobywasz. Zrób zdjęcie kartki albo wklej odpowiedź: Maturownik+ porówna ją ze schematem punktowania, policzy punkty i wytłumaczy, gdzie i dlaczego je tracisz.