--- id: 56533eb9ac21ba0edf2244e2 title: Caesars Cipher challengeType: 5 isRequired: true videoUrl: '' localeTitle: 凯撒密码 --- ## Description
最简单和最广为人知的密码之一Caesar cipher ,也称为shift cipher 。在shift cipher中,字母的含义被移动一些设定量。一种常见的现代用途是ROT13密码,其中字母的值移动了13个位置。因此'A'''N','B'''O'等等。编写一个函数,它将ROT13编码的字符串作为输入并返回一个已解码的字符串。所有字母都是大写的。不要转换任何非字母字符(即空格,标点符号),但要传递它们。如果卡住,请记得使用Read-Search-Ask 。尝试配对程序。编写自己的代码。
## Instructions
## Tests
```yml tests: - text: rot13("SERR PBQR PNZC")应解码为FREE CODE CAMP testString: 'assert(rot13("SERR PBQR PNZC") === "FREE CODE CAMP", "rot13("SERR PBQR PNZC") should decode to FREE CODE CAMP");' - text: rot13("SERR CVMMN!")应该解码为FREE PIZZA! rot13("SERR CVMMN!") FREE PIZZA! testString: 'assert(rot13("SERR CVMMN!") === "FREE PIZZA!", "rot13("SERR CVMMN!") should decode to FREE PIZZA!");' - text: rot13("SERR YBIR?")应解码为FREE LOVE? testString: 'assert(rot13("SERR YBIR?") === "FREE LOVE?", "rot13("SERR YBIR?") should decode to FREE LOVE?");' - text: rot13("GUR DHVPX OEBJA SBK WHZCF BIRE GUR YNML QBT.")应该在rot13("GUR DHVPX OEBJA SBK WHZCF BIRE GUR YNML QBT.")解码到THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG. testString: 'assert(rot13("GUR DHVPX OEBJA SBK WHZCF BIRE GUR YNML QBT.") === "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG.", "rot13("GUR DHVPX OEBJA SBK WHZCF BIRE GUR YNML QBT.") should decode to THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG.");' ```
## Challenge Seed
```js function rot13(str) { // LBH QVQ VG! return str; } // Change the inputs below to test rot13("SERR PBQR PNZC"); ```
## Solution
```js // solution required ```