Caesar cipher: Difference between revisions

m (fixed header)
Line 4,403:
Using the built-in rotate() function on a number over a range, a number outside of the range will pass through unaltered.
 
<syntaxhighlight lang="langur">val .rot = fn(.s, .key) {
cp2s map(fn(.c) { rotate(rotate(.c, .key, 'a'..'z'), .key, 'A'..'Z') }, s2cp .(s))
}
 
val .s = "A quick brown fox jumped over something, you know."
val .key = 3
 
writeln " original: ", .s
val .s = "A quick brown fox jumped over something."
writeln "encrypted: ", .rot(.s, .key)
val .key = 3
writeln "decrypted: ", .rot(.rot(.s, .key), -.key)</syntaxhighlight>
 
</syntaxhighlight>
writeln " original: ", .s
writeln "encrypted: ", .rot(.s, .key)
writeln "decrypted: ", .rot(.rot(.s, .key), -.key)</syntaxhighlight>
 
{{out}}
1,007

edits