Comments on Caesar shift cipher
Parent
Caesar shift cipher
Introduction
What is the Caesar shift cipher (ROT$n$)? It's basically a cipher sequence that changes a letter's value from the number chosen. If we use ROT1 on "games", we get "hbnft". The basic interpretation of the cipher is iterating the value of a letter by 1 $n$ times. If you still don't understand, try using the ROT13 website.
Challenge
Make a program that takes input of a number from 1 to 25, call it $n$, and takes input of a string. It could be any. Then, use $n$ to convert the string into ROT$n$ and output the result.
Examples of inputs and outputs:
If $n = 4$ and string is "Hello, world.", we get Lipps, asvph
.
If $n = 15$ and string is "trololol", we get igdadada
.
If $n = 7$ and string is "gxoxk zhggt zbox rhn ni", we get never gonna give you up
.
If $n = 24$ and string is "I want breakfast!", we get G uylr zpcyidyqr!
.
If $n = 13$ and string is "guvf grkg vf fhf", we get this text is sus
.
Shortest program wins.
[JavaScript (Node.js)], 67 60 …
3y ago
[Python 3.8 (pre-release)], 98 …
3y ago
[Ruby], 56 bytes -> …
3y ago
Javascript (V8), 202 97 bytes …
3y ago
[C (gcc)], 112 bytes Functi …
3y ago
[C (clang)], 161 bytes …
3y ago
[Haskell], 74 bytes …
3y ago
Post
Javascript (V8), 202 97 bytes
o=>r=>o.replace(/[a-zA-Z]/g,o=>String.fromCharCode((o<="Z"?90:122)>=(o=o.charCodeAt()+r)?o:o-26))
Since the text of input must be manually changed from the code, here is how to change it, Go to console.log(rot("Hello World")(4));
and change text between ""
(String) into anything you want lke console.log(rot("Codidact Code Golf)(4));
and if you want to change ROT$n$, change the number between brackets into anything like console.log(rot("Codidact Code Golf)(13));
.
0 comment threads