字符串加密
提交数: 452, 通过率: 71.9%, 平均分: 71.9
题目描述:
某字符串加密程序, 加密算法如下:
①明文中每个字符用 8 位二进制 ASCII 码(不足八位的左端补 0, 凑足八位) 表示, 如“A” 的二进制 ASCII
码值为 01000001;
②对 8 位二进制编码进行取反码(0 变 1, 1 变 0) 操作,如 01000001 的反码是 10111110;
③将 8 位二进制反码用 2 位十六进制表示, 得到该字符的密文;
④将每个字符的密文按照明文的倒序连接。
输入格式:
一行明文
输出格式:
一行加密后的密文
样例输入:
China
样例输出:
9E919697BC
提示:
请完善如下程序:
def btoh(b):
#自定义函数是将b中存储的二进制反码转换成对应的十六进制数
h=0
H=""
for i in range(8):
h=h*2+int(b[i])
if (i+1)%4==0:
if 0<=h<=9:
H=H+str(h)
else:
_________1__________
h=0
return H
s=input()
mw=""
for i in s:
m=ord(i)
b=""
for j in range(8):
_____2______
m=m//2
b=str(r)+b
_______3________
print( mw )
如果输入的明文是“ABC”,则加密后的密文为 ________________________
时间限制: 1000ms空间限制: 256MB
来源: 2021高二期中考试t18