RosettaCodeData/Task/Caesar-cipher/Common-Lisp/caesar-cipher-3.lisp
2023-07-01 13:44:08 -04:00

9 lines
247 B
Common Lisp

(defconstant +a+ "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz")
(defun caesar (txt offset)
(map 'string
#'(lambda (c)
(if (find c +a+)
(char +a+ (mod (+ (position c +a+) (* 2 offset)) 52))
c))
txt))