mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-12-22 03:00:14 +00:00
c6582b35bf
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Dhruv Manilawala <dhruvmanila@gmail.com> Co-authored-by: Christian Clauss <cclauss@me.com>
59 lines
1.9 KiB
Python
59 lines
1.9 KiB
Python
import string
|
|
|
|
|
|
def decrypt(message: str) -> None:
|
|
"""
|
|
>>> decrypt('TMDETUX PMDVU')
|
|
Decryption using Key #0: TMDETUX PMDVU
|
|
Decryption using Key #1: SLCDSTW OLCUT
|
|
Decryption using Key #2: RKBCRSV NKBTS
|
|
Decryption using Key #3: QJABQRU MJASR
|
|
Decryption using Key #4: PIZAPQT LIZRQ
|
|
Decryption using Key #5: OHYZOPS KHYQP
|
|
Decryption using Key #6: NGXYNOR JGXPO
|
|
Decryption using Key #7: MFWXMNQ IFWON
|
|
Decryption using Key #8: LEVWLMP HEVNM
|
|
Decryption using Key #9: KDUVKLO GDUML
|
|
Decryption using Key #10: JCTUJKN FCTLK
|
|
Decryption using Key #11: IBSTIJM EBSKJ
|
|
Decryption using Key #12: HARSHIL DARJI
|
|
Decryption using Key #13: GZQRGHK CZQIH
|
|
Decryption using Key #14: FYPQFGJ BYPHG
|
|
Decryption using Key #15: EXOPEFI AXOGF
|
|
Decryption using Key #16: DWNODEH ZWNFE
|
|
Decryption using Key #17: CVMNCDG YVMED
|
|
Decryption using Key #18: BULMBCF XULDC
|
|
Decryption using Key #19: ATKLABE WTKCB
|
|
Decryption using Key #20: ZSJKZAD VSJBA
|
|
Decryption using Key #21: YRIJYZC URIAZ
|
|
Decryption using Key #22: XQHIXYB TQHZY
|
|
Decryption using Key #23: WPGHWXA SPGYX
|
|
Decryption using Key #24: VOFGVWZ ROFXW
|
|
Decryption using Key #25: UNEFUVY QNEWV
|
|
"""
|
|
for key in range(len(string.ascii_uppercase)):
|
|
translated = ""
|
|
for symbol in message:
|
|
if symbol in string.ascii_uppercase:
|
|
num = string.ascii_uppercase.find(symbol)
|
|
num = num - key
|
|
if num < 0:
|
|
num = num + len(string.ascii_uppercase)
|
|
translated = translated + string.ascii_uppercase[num]
|
|
else:
|
|
translated = translated + symbol
|
|
print(f"Decryption using Key #{key}: {translated}")
|
|
|
|
|
|
def main() -> None:
|
|
message = input("Encrypted message: ")
|
|
message = message.upper()
|
|
decrypt(message)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import doctest
|
|
|
|
doctest.testmod()
|
|
main()
|