SHOW:
|
|
- or go back to the newest paste.
1 | czy_dobry_klucz = False | |
2 | czy_kontynuacja = True | |
3 | ||
4 | ||
5 | while czy_kontynuacja: | |
6 | #sprawdzanie poprawności klucza | |
7 | while not czy_dobry_klucz: | |
8 | klucz = input("Podaj klucz do szyfrowania: ") | |
9 | klucz = klucz.lower() | |
10 | czy_dobry_klucz = True | |
11 | #Warunek parzystej ilości liter | |
12 | liczba_liter_klucza = len(klucz) | |
13 | if not liczba_liter_klucza % 2 == 0: | |
14 | czy_dobry_klucz = False | |
15 | print(f"Klucz {klucz} jest błędny bo zawiera nieparzystą ilość znaków") | |
16 | continue | |
17 | #warunek niepowtarzalności liter | |
18 | for litera in klucz: | |
19 | ile_wystapien = klucz.count(litera) | |
20 | if(ile_wystapien > 1): | |
21 | czy_dobry_klucz = False | |
22 | print(f'Klucz {klucz} jest błędny bo powtarza się w nim litera {litera}') | |
23 | break | |
24 | ||
25 | #Szyfrowanie | |
26 | tekst = input("Podaj tekst do zaszyfrowania: ") | |
27 | tekst = tekst.lower() | |
28 | zaszyfrowany = "" | |
29 | ||
30 | for litera in tekst: | |
31 | if litera in klucz: | |
32 | miejsce_w_kluczu = klucz.find(litera) | |
33 | if miejsce_w_kluczu % 2 == 0: | |
34 | zaszyfrowany += klucz[miejsce_w_kluczu+1] | |
35 | else: | |
36 | zaszyfrowany += klucz[miejsce_w_kluczu-1] | |
37 | else: | |
38 | zaszyfrowany += litera | |
39 | ||
40 | print(f"{tekst} po zaszyfrowaniu kluczem {klucz} wygląda następująco: {zaszyfrowany}") | |
41 | ||
42 | kontynuacja = input("Czy chcesz coś jeszcze zaszyfrować? ") | |
43 | kontynuacja = kontynuacja.lower() | |
44 | if kontynuacja == "tak": | |
45 | czy_kontynuacja = True | |
46 | czy_nowy_klucz = input("Czy chcesz zmienić klucz szyfrowania? ") | |
47 | czy_nowy_klucz = czy_nowy_klucz.lower() | |
48 | if czy_nowy_klucz == "tak": | |
49 | czy_dobry_klucz = False | |
50 | else: | |
51 | czy_kontynuacja = False | |
52 | ||
53 | print("koniec programu") |