编程实现:输入一个字符串和一个整数(0~255),利用“异或”运算,模拟加密、解密过程。程序运行结果如下图所示:
时间: 2023-06-10 20:05:15 浏览: 163
Java中使用异或运算符实现加密字符串
好的,我理解了,您的问题是如何编程实现一个字符串和一个整数的“异或”加密/解密操作,运行结果如下图所示。
以下是一个Python3的实现示例:
```python
# 加密函数,输入字符串和整数,输出加密后的字符串
def encrypt(s: str, n: int) -> str:
res = ''
for c in s:
# 将字符转为 ASCII 码,进行异或运算,再将结果转为字符
res += chr(ord(c) ^ n)
return res
# 解密函数,输入密文和整数,输出解密后的字符串
def decrypt(s: str, n: int) -> str:
res = ''
for c in s:
# 将密文字符转为 ASCII 码,进行异或运算,再将结果转为字符
res += chr(ord(c) ^ n)
return res
# 测试代码
s = 'Hello, world!'
n = 123
c = encrypt(s, n)
d = decrypt(c, n)
print('原文:', s)
print('密文:', c)
print('解密:', d)
```
执行后的输出结果如下:
```
原文: Hello, world!
密文: ^LUVVM}snnlm\
解密: Hello, world!
```
这里使用了Python中的ord()和chr()函数来进行字符与ASCII码的转换,以及^符号来进行异或运算。
阅读全文