Përmbajtje:

Programi Cesar Cipher në Python: 4 hapa
Programi Cesar Cipher në Python: 4 hapa

Video: Programi Cesar Cipher në Python: 4 hapa

Video: Programi Cesar Cipher në Python: 4 hapa
Video: TUDev's Cryptography with Python Workshop! Creating a Substitution Cipher (Caesar Cipher) 2024, Nëntor
Anonim
Programi Cesar Cipher në Python
Programi Cesar Cipher në Python

Shifra e Cezarit është një shifër e lashtë dhe e përdorur gjerësisht, e cila është e lehtë të kriptohet dhe deshifrohet. Punon duke zhvendosur shkronjat e alfabetit për të krijuar një alfabet krejtësisht të ri (ABCDEF mund të zhvendosë mbi 4 shkronja dhe do të bëhet EFGHIJ).

Shifrat e Cezarit nuk janë shifrat më të sigurt atje, por janë të mirë për detyra të vogla të tilla si kalimi i shënimeve sekrete ose bërja e fjalëkalimeve pak më të forta. Reallyshtë me të vërtetë e lehtë të deshifrosh kodin, por mund të jetë e lodhshme të kodosh një të tillë nëse nuk e ke mësuar përmendësh alfabetin special.

Për ta bërë këtë proces më të lehtë, ne mund të përdorim fuqinë e kompjuterëve, më konkretisht gjuhën e programimit Python.

Ky udhëzues do t'ju tregojë se si të krijoni një program që konverton mesazhet në një shifër sipas komandës suaj.

Furnizimet

Gjithçka që ju nevojitet është një përkthyes Python: IDLE, Pycharm dhe Thonny janë disa opsione të mira, falas (kam përdorur Pycharm)

Njohuri themelore të Python

Hapi 1: Deklarimi i Variablave dhe Marrja e Inputeve

Deklarimi i Variablave dhe Marrja e Inputeve
Deklarimi i Variablave dhe Marrja e Inputeve

Për të ruajtur në të vërtetë vlerat e vargut (tekstit) të alfabetit, mesazhit, zhvendosjes, etj., Duhet të përdorim variabla. Fillojmë duke deklaruar variablat 'alfabet', 'partialOne', 'partialTwo' dhe 'newAlphabet'. Unë kam shkruar emrat e variablave në Rastin e Kamelit në kodin tim (fjala e parë është e vogël dhe e dyta e madhe), por ju mund t'i shkruani si të doni, për aq kohë sa ju kujtohet ta ndryshoni atë në pjesën tjetër të kodit gjithashtu Me Ndryshorja e alfabetit ka vlerën "abcdefghijklmnopqrstuvwxyz". Të gjithë ndryshoret e tjera janë vendosur në "", e cila është një varg i zbrazët pasi nuk kemi ende vlerat e tyre.

Ajo që po bën kjo është ngritja e sistemit të pjesshëm, i cili është ajo që ne po përdorim për të krijuar në të vërtetë ndryshimin. Kjo do të shpjegohet në një hap të mëvonshëm.

Pas kësaj, ne duhet të marrim mesazhin dhe të zhvendosim vlerën nga përdoruesi. Ne përdorim funksionin e hyrjes për ta bërë këtë. Kjo pjesë e kodit i kërkon përdoruesit një mesazh dhe një numër për të zhvendosur alfabetin.

KODI:

alfabet = "abcdefghijklmnopqrstuvwxyz"

partialOne = ""

partialTwo = ""

newAlphabet = ""

mesazh = hyrje ("Ju lutemi shkruani mesazhin që dëshironi të përktheni:").lojë ()

kyç = int (hyrja ("Ju lutemi shkruani numrin me të cilin dëshironi të zhvendoseni me:"))

Hapi 2: Krijimi i Alfabetit të Ri

Krijimi i alfabetit të ri
Krijimi i alfabetit të ri

Tani për të krijuar alfabetin e zhvendosur. Për ta bërë këtë, ne do të përdorim sistemin e pjesshëm. Sistemi i pjesshëm është vendi ku kompjuteri ndan alfabetin në dy pjesë (një mënyrë e zbukuruar për të thënë pjesë). Pjesa e parë megjithatë është e gjatë që ju i thatë programit të kalojë, dhe e dyta është pjesa e mbetur. Kompjuteri ndërron pjesët. Kjo është pikërisht ajo që po bën kodi, së bashku me deklaratën e parë, e cila thotë se nëse zhvendosja është 0, alfabeti i ri dhe alfabeti i vjetër janë të njëjtë pasi nuk po ndërroni asgjë.

Për shembull:

Sekuenca - 123456789

Pjesa e Parë - 123; Pjesa e Dytë - 456789

Sekuenca e Re - 456789123

KODI:

nëse çelësi == 0:

newAlphabet = alfabet

çelësi elif> 0:

partialOne = alfabeti [: kyç]

partialTwo = alfabeti [çelësi:]

newAlphabet = partialTwo + partialOne

tjeter:

partialOne = alfabeti [:(26 + çelësi)]

partialTwo = alfabeti [(26 + çelësi):]

newAlphabet = partialTwo + partialOne

Hapi 3: Zhvendosja e Mesazhit

Zhvendosja e Mesazhit
Zhvendosja e Mesazhit

Tani kemi alfabetin tonë dhe alfabetin e ri. Mbetet vetëm për ta kthyer mesazhin në kod.

Së pari, ne vendosim një ndryshore të re dhe e quajmë "të koduar" dhe e vendosim në "". Pastaj ne shkruajmë një lak vërtet të komplikuar i cili kontrollon secilën shkronjë në mesazh dhe e kalon atë në shkronjën e re. Rezulton rezultatin dhe ja ku e keni, një kod të konvertuar me sukses!

KODI:

e koduar = "" për mesazhin_index në rang (0, len (mesazh)):

nëse mesazhi [message_index] == "":

e koduar+= ""

për alphabet_index në rang (0, len (newAlphabet)):

nëse mesazhi [message_index] == alfabeti [alphabet_index]:

e koduar+= alfabet i ri [alfabeti_indeks]

print (i koduar)

Hapi 4: Shtesë

Shtesë
Shtesë
Shtesë
Shtesë

Bashkangjitur është skedari i kodit.

Recommended: