为确保数据的安全性,人们往往会对数据进行加密处理,加密算法如下:
明文中的字母偏移n位,若n为正整数,则字母向后偏移n位;n为负整数,则字母向前偏移n位。其他字符不发生变化。
如原文“ABy123”,n值为-3,则加密后的密文为“XYv123”,若n值为3,则加密后的密文为“DEb123”。实现上述功能的python程序如下,请回答下列问题:
(1)若偏移位数n值为-2,密文为“ABC@M”,则原文为
______。
(2)请在划线处填入合适的代码。
(3)加框处代码有误,请修改。
______def encrypt(c,n,d) :
#函数功能:获取偏移后相应字母ASCII码的值,并返回对应的字母
if "A" <= c <= "Z" or "a" <= c <="z":
if n > 0:
c = chr((ord(c) - d + n) % 26 + d)
else:
c = chr((ord(c) - d + n + 26) % 26 + d)
①_____
n = int(input("输入偏移位数:"))
str1 = input("输入明文:")
str2 = ""
for i in range(len(str1)):
#加框处代码有误,请修改
if "a" <= c <= "z":
c1 =
②______ elif "A" <= c <= "Z":
c1 = encrypt(c,n,ord("A"))
else:
c1 = c
③_______ print("生成的密文为:",str2)