28 lines
749 B
Text
28 lines
749 B
Text
F encrypt(key, text)
|
||
V out = ‘’
|
||
V j = 0
|
||
L(c) text
|
||
I !c.is_alpha()
|
||
L.continue
|
||
out ‘’= Char(code' (c.uppercase().code + key[j].code - 2 * ‘A’.code) % 26 + ‘A’.code)
|
||
j = (j + 1) % key.len
|
||
R out
|
||
|
||
F decrypt(key, text)
|
||
V out = ‘’
|
||
V j = 0
|
||
L(c) text
|
||
I !c.is_alpha()
|
||
L.continue
|
||
out ‘’= Char(code' (c.code - key[j].code + 26) % 26 + ‘A’.code)
|
||
j = (j + 1) % key.len
|
||
R out
|
||
|
||
V key = ‘VIGENERECIPHER’
|
||
V original = ‘Beware the Jabberwock, my son! The jaws that bite, the claws that catch!’
|
||
V encrypted = encrypt(key, original)
|
||
V decrypted = decrypt(key, encrypted)
|
||
|
||
print(original)
|
||
print(‘Encrypted: ’encrypted)
|
||
print(‘Decrypted: ’decrypted)
|