-
-
Save amankharwal/7ebe55115e05d7cb5212f8cc95803e00 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from tkinter import messagebox, simpledialog, Tk | |
def is_even(number): | |
return number % 2 == 0 | |
def get_even_letters(message): | |
even_letters = [] | |
for counter in range(0, len(message)): | |
if is_even(counter): | |
even_letters.append(message[counter]) | |
return even_letters | |
def get_odd_letters(message): | |
odd_letters = [] | |
for counter in range(0, len(message)): | |
if not is_even(counter): | |
odd_letters.append(message[counter]) | |
return odd_letters | |
def swap_letters(message): | |
letter_list = [] | |
if not is_even(len(message)): | |
message = message + 'x' | |
even_letters = get_even_letters(message) | |
odd_letters = get_odd_letters(message) | |
for counter in range(0, int(len(message)/2)): | |
letter_list.append(odd_letters[counter]) | |
letter_list.append(even_letters[counter]) | |
new_message = ''.join(letter_list) | |
return new_message | |
def get_task(): | |
task = simpledialog.askstring('Task', 'Do you want to encrypt or decrypt?') | |
return task | |
def get_message(): | |
message = simpledialog.askstring('Message', 'Enter the secret message: ') | |
return message | |
root = Tk() | |
while True: | |
task = get_task() | |
if task == 'encrypt': | |
message = get_message() | |
encrypted = swap_letters(message) | |
messagebox.showinfo('Ciphertext of the secret message is:', encrypted) | |
elif task == 'decrypt': | |
message = get_message() | |
decrypted = swap_letters(message) | |
messagebox.showinfo('Plaintext of the secret message is:', decrypted) | |
else: | |
break | |
root.mainloop() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment