某个公司采用公用电话来传递数据,害怕被人窃听,所以要求对数据加密传输。已知传递的数据是4位的整数,且要求在传递过程中数据是加密的。
数据加密的规则为:将每位传递的数字都加上5,之后用和除以10的余数来代替该数字,最后将第一位和第四位数字交换,第二位和第三位数字交换。
现在问题来,通过python程序实现数据加密的过程。
下面直接上代码:
########################
def jiami(n):
# 获取各位上的数字
s[0] = n % 10 # 将个位存入s[0]
s[1] = n % 100 // 10 # 将十位存入s[1]
s[2] = n % 1000 // 100 # 将百位存入s[2]
s[3] = n // 1000 # 将千位存入s[3]
for i in range(0, 4):
s[i] += 5 # 各位上的数字加5
s[i] %= 10 # 除以10取余
for i in range(0, (3 // 2) + 1): # 数字交换,1、4位交换,2、3位交换
t = s[i] # 数字交换
s[i] = s[3 - i]
s[3 - i] = t
i = 3# 输出加密后的数据
while i >= 0:
print("%d" % s[i], end="")
i -= 1
if __name__ == "__main__":
s = [0]*4 # 数组s用来存放生成的4位数
n = int(input("请输入将要传递的四位整数:"))
jiami(n)
########################
执行结果如下:
请输入将要传递的四位整数:4568
3109
________________END______________
网友评论