题目

某信息仅包含大写字母,字符数不超过n*n(n*n 为密钥矩阵规模,n<0),加密过程如下: 图 a 图 b 根据上述加密算法编写解密程序。程序在启动时读取密钥矩阵存入列表a中,根据程序提示,输入 密文,然后显示明文。运行界面如下图 c所示。 图 c (1) 输入的密文是“8,1,23,2,17,3,33,4,”,则原文是(密钥矩阵按图 a 中的 密钥矩阵) (2) 实现上述算法的 Python 程序如下,请在划线处填入合适的代码。 def getmm(x,n): col = (x-1) % n row = (x-1) //n getmm = a[col*n+row] if row % 2 == 1:     getmm = return getmm n = 3 #存储密文数据,偶数位存储加密值,奇数位存储该数据在原文中的位置 #生成规模为 n*n 的密钥矩阵存入列表 a 中 mw=[] a=[] for i in range(n*n):     a.append(i+1)     p=input("请输入密文:")      #2,1,6,2,10,3,12,4,10,5, t=0     k=0 for i in range(len(p)): c=p[i] if c!=",": t=t*10+int(c) else: mw.append(t) t=0 print("原文为:",end="") yw=[] for i in range(k//2):             #对密文解密,结果存入列表 yw 中 yw.append(mw[2*i]-getmm(mw[2*i+1],n)) s="" for i in range(k//2): s=s+                  #转换为字母输出 print(s) 答案: 【1】GSJY 【1】a[(n-col-1)*n+row]【2】k=k+1【3】chr((yw[i])+64)chr((yw[i])+ord(“A”)-1)或其他等价答案
信息技术 试题推荐
最近更新