实现一个凯撒密码算法(Caesar cipher),要求输入一个数字作为秘钥K,对输入的任意字符串(暂时只考虑英文字符和数字)可以输出凯撒密码算法加密的密文
时间: 2024-05-09 11:17:51 浏览: 170
好的,对于您的问题,我可以回答。凯撒密码是一种简单的替换密码算法,其中每个字母在字母表上被向右或向左移动固定数量的位置。我们可以通过将字母表中的字母向右或向左移动K个位置来加密消息。
以下是一个简单的凯撒密码加密算法的Python代码示例:
```
def encrypt_caesar(plaintext, key):
ciphertext = ""
for char in plaintext:
if char.isalpha():
if char.isupper():
ciphertext += chr((ord(char) - 65 + key) % 26 + 65)
else:
ciphertext += chr((ord(char) - 97 + key) % 26 + 97)
elif char.isdigit():
ciphertext += str((int(char) + key) % 10)
else:
ciphertext += char
return ciphertext
```
在这个例子中,`encrypt_caesar`函数接受两个参数:明文和密钥,然后返回密文。这个函数使用了Python的内置函数`ord`和`chr`来处理ASCII码,以及`isalpha`和`isdigit`函数来判断字符是否是字母或数字。最后将移动后的字符拼接起来形成密文。
希望这可以帮到您。
阅读全文