描述
愷撒密碼是古羅馬愷撒大帝用來對(duì)軍事情報(bào)進(jìn)行加解密的算法,它采用了替換方法對(duì)信息中的每一個(gè)英文字符循環(huán)替換為字母表序列中該字符后面的第三個(gè)字符,即,字母表的對(duì)應(yīng)關(guān)系如下:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z?A B C
對(duì)于原文字符P,其密文字符C滿足如下條件:C=(P+3) mod 26
上述是凱撒密碼的加密方法,解密方法反之,即:P=(C-3) mod 26
假設(shè)用戶可能使用的輸入包含大小寫字母a~zA~Z、空格和特殊符號(hào),請(qǐng)編寫一個(gè)程序,對(duì)輸入字符串進(jìn)行愷撒密碼加密,直接輸出結(jié)果,其中空格不用進(jìn)行加密處理。使用input()獲得輸入。
輸入
示例1: python is good
輸出
示例1: sbwkrq lv jrrg
python代碼:
s=input()
t=""
for c in s:
? ? if c>='a' and c<='z':
? ? ? ? t+=chr(ord('a')+(ord(c)-ord('a')+3)%26)
? ? elif c>='A' and c<='Z':
? ? ? ? t+=chr(ord('A')+(ord(c)-ord('A')+3)%26)
? ? else:
? ? ? ? t+=c
print(t)