300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 凯撒密码加密算法 (8 分)

凯撒密码加密算法 (8 分)

时间:2020-09-10 00:47:35

相关推荐

凯撒密码加密算法 (8 分)

凯撒密码加密算法(8分)

编写一个凯撒密码加密程序,接收用户输入的文本和密钥k,对明文中的字母a-z和字母A-Z替换为其后第k个字母。

输入格式:

接收两行输入,第一行为待加密的明文,第二行为密钥k。

输出格式:

输出加密后的密文。

输入样例:

在这里给出一组输入。例如:

Hello World!

3

输出样例:

在这里给出相应的输出。例如:

Khoor Zruog!

方法一

s1=list('abcdefghijklmnopqrstuvwxyz')

s2=list('ABCDEFGHIJKLMNOPQRSTUVWXYZ')

s=list(input())

n=int(input())

for i in range(len(s)):

if s[i] in s1:

s[i]=s1[(s1.index(s[i])+n)%26]

elif s[i] in s2:

s[i]=s2[(s2.index(s[i])+n)%26]

print(''.join(s))

方法二

import string

def kaisa(s,k):

lower=string.ascii_lowercase

upper=string.ascii_uppercase

before=string.ascii_letters

after=lower[k:]+lower[:k]+upper[k:]+upper[:k]

table=''.maketrans(before,after)

return s.translate(table)

n=input()

k=int(input())

print(kaisa(n,k))

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。