测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A39982. 换位密码法是将明文中的字符位置通过一定的规则重新排列从而得到密文的一种加密方法。 某换位密码法加密方法如下: 先把明文按照固定长度(4 位一组)进行分组, 然后对每一组的字符进行换位操作, 从而得到密文。 例如,字符串"ceit", 使用密钥 1432 进行加密时, 首先将字符串以 4 个字符为一组进行分组, 然后对每组的字符进行换位, 第 1 个和第 3 个字符位置不变, 把第 2 个字符和第…

填空题 困难

题目描述

换位密码法是将明文中的字符位置通过一定的规则重新排列从而得到密文的一种加密方法。 某换位密码法加密方法如下: 先把明文按照固定长度(4 位一组)进行分组, 然后对每一组的字符进行换位操作, 从而得到密文。 例如,字符串"ceit", 使用密钥 1432 进行加密时, 首先将字符串以 4 个字符为一组进行分组, 然后对每组的字符进行换位, 第 1 个和第 3 个字符位置不变, 把第 2 个字符和第 4 个字符交换位置, 从而得到密文"ctie"。 小张编写的程序如

下, 请完善划线处的代码:

def jiami(yw,key):

result = ''

for i in range(0, ① ,len(key)):

s1=yw[i:i+ len(key) ]

for j in range( ② ):

result = result + ③

return result

yw= input('请输入待加密的明文: ')

key= input('请输入密钥: ')

mw= ④

print(mw)

运行结果如下图所示:

参考答案

def jiami(yw,key): result = '' for i in range(0,len(yw),len(key)): s1=yw[i:i+len(key)] for j in range(len(key)): result = result + s1[int(key[j])-1] return result yw= input('请输入待加密的明文: ') key= input('请输入密钥: ') mw= jiami(yw,key)

答案解析

评分标准:

(1) len(yw); (2分)

(2) len(key); (3 分)

(3) s1[int(key[j])-1]; (4分)

(4) jiami(yw,key)。 (3 分)

上一题 下一题