凯撒密码的加密与解密

加密:c=(p+3)mod26

ptxt=input("请你输入明文文本:")
for p in ptxt:
    if ord("a")<=ord(p)<=ord("z"):
        print(chr(ord("a")+(ord(p)-ord("a")+3)%26),end="")
    elif "A"<=p<="Z":
        print(chr(ord("A")+(ord(p)-ord("A")+3)%26),end="")
    else:
        print(p,end=' ')

测试:

请你输入明文文本:we are family
zh  duh  idplob

解密:p=(c-3)mod26

jtxt=input("请你输入要解密的密文:")
for j in jtxt:
    if ord("a")<=ord(j)<=ord("z"):
        print(chr(ord("a")+(ord(j)-ord("a")-3)%26),end="")
    elif "A"<=j<="Z":
        print(chr(ord("A")+(ord(j)-ord("A")-3)%26),end="")
    else:
        print(j,end="")

测试:

请你输入要解密的密文:zh  duh  idplob
we  are  family

猜你喜欢

转载自blog.csdn.net/qq_38452951/article/details/108985579