Łamanie szyfru Cezara wszystkimi kluczami
Szyfr Cezara - Algorytmy z podstawy programowej (Python)
Kluczy jest tylko 25, więc szyfr łatwo złamać: wypisujemy tekst odszyfrowany każdym kluczem i szukamy wzrokiem tego, który ma sens. Takie podejście nazywa się **przeszukiwaniem wyczerpującym** (brute force).
def cezar(tekst, klucz):
wynik = ""
for znak in tekst:
if "A" <= znak <= "Z":
wynik += chr((ord(znak) - ord("A") + klucz) % 26 + ord("A"))
else:
wynik += znak
return wynik
szyfr = "GHTLR"
for k in range(1, 26):
print(k, cezar(szyfr, -k))Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Algorytmy z podstawy programowej·Zaloguj się, aby zapisać postęp na koncie.