问题描述
移位数N=3和7时,分别加密并恢复一段文字,例如“
Peace and Love
”。
要求
:(不)区分大小写,但能识别空格、标点;
恺撒密码是古罗马时代经常使用的一种经典加密算法,伴随着恺撒的南征北战而流传于世。恺撒密码的基本原理是将明文字符串中的每一位字母往后(或往前)移N位,N即是对明文进行加密的密钥;移位之后的结果是一串无明显语义信息的字符串,即密文;解密过程是将密文中的每一位字母往前(或往后)移N位。
最简单的明文是一串英文字母,不区分大小写、无空格和其它标点符号。加密这种明文的第一步是将字母与数字一一对应,例如a对应数字0、b对应数字1、…、z对应数字25;然后,将明文中每一位字母所对应的数字增加(或减少)N后取模,例如,假设 N = 3,对明文中字母b的加密结果是:1 + 3 mod 26 = 4,对字母z的加密结果是:25 + 3 mod 26 = 2
。
代码示例:(移位数N=3)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>