mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-04-22 13:47:37 +00:00
add tests for enigma_machine
This commit is contained in:
parent
678e0aa8cf
commit
4d35248172
@ -1,3 +1,11 @@
|
|||||||
|
"""
|
||||||
|
|
||||||
|
Note:
|
||||||
|
This algorithm has memory persistance.
|
||||||
|
So multiple runs on the same runtime will carry junk and scramble the result!
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
alphabets = [chr(i) for i in range(32, 126)]
|
alphabets = [chr(i) for i in range(32, 126)]
|
||||||
gear_one = list(range(len(alphabets)))
|
gear_one = list(range(len(alphabets)))
|
||||||
gear_two = list(range(len(alphabets)))
|
gear_two = list(range(len(alphabets)))
|
||||||
@ -40,7 +48,22 @@ def engine(input_character):
|
|||||||
rotator()
|
rotator()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def encode_or_decode(message, token):
|
||||||
|
"""
|
||||||
|
|
||||||
|
>>> encode_or_decode("hello", 3)
|
||||||
|
(['/', '0', "'", '%', ' '], 3)
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
for _ in range(token):
|
||||||
|
rotator()
|
||||||
|
for j in message:
|
||||||
|
engine(j)
|
||||||
|
return code, token
|
||||||
|
|
||||||
|
|
||||||
|
def menu():
|
||||||
decode = list(input("Type your message:\n"))
|
decode = list(input("Type your message:\n"))
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
@ -57,3 +80,10 @@ if __name__ == "__main__":
|
|||||||
f"\nYour Token is {token} please write it down.\nIf you want to decode "
|
f"\nYour Token is {token} please write it down.\nIf you want to decode "
|
||||||
"this message again you should input same digits as token!"
|
"this message again you should input same digits as token!"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
import doctest
|
||||||
|
|
||||||
|
doctest.testmod()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user