15 lines
377 B
Nim
15 lines
377 B
Nim
import strutils
|
|
|
|
proc caesar(s: string, k: int, decode = false): string =
|
|
var k = if decode: 26 - k else: k
|
|
result = ""
|
|
for i in toUpper(s):
|
|
if ord(i) >= 65 and ord(i) <= 90:
|
|
result.add(chr((ord(i) - 65 + k) mod 26 + 65))
|
|
|
|
let msg = "The quick brown fox jumped over the lazy dogs"
|
|
echo msg
|
|
let enc = caesar(msg, 11)
|
|
echo enc
|
|
echo caesar(enc, 11, decode = true)
|