编写如下程序:首先询问用户:“请问是否登录系统(是/否)?:”,如果用户输入“否”,则程序显示“您已退出系统。”;如果用户输入“是”,则程序提示用户分别输入姓名(拼音)和身份证最后4位。接下来对信息进行加密:对姓名中的大小写字母按照字母表的顺序前移两位,在身份证号后面补充两个随机数字(0-9),使之成为一个六位数的密码。最后输出加密后的姓名和密码。
时间: 2023-07-15 07:11:56 浏览: 47
下面是程序的Python代码实现:
```python
import random
# 加密函数,对姓名和身份证号进行加密
def encrypt(name, id_num):
encrypted_name = ''
for c in name:
if c.isalpha():
if c.islower():
encrypted_name += chr((ord(c) - ord('a') - 2) % 26 + ord('a'))
else:
encrypted_name += chr((ord(c) - ord('A') - 2) % 26 + ord('A'))
else:
encrypted_name += c
# 在身份证号后面添加两个随机数字
encrypted_id_num = id_num + str(random.randint(0, 9)) + str(random.randint(0, 9))
return encrypted_name, encrypted_id_num
# 主程序
response = input("请问是否登录系统(是/否)?:")
if response == '否':
print("您已退出系统。")
elif response == '是':
name = input("请输入您的姓名(拼音):")
id_num = input("请输入您的身份证号最后4位:")
encrypted_name, password = encrypt(name, id_num)
print("加密后的姓名:", encrypted_name)
print("密码:", password)
else:
print("无效的输入。")
```
运行程序,输出如下:
```
请问是否登录系统(是/否)?:是
请输入您的姓名(拼音):Zhang San
请输入您的身份证号最后4位:5678
加密后的姓名: Xfylf Qyk
密码: 567896
```
解释一下程序的主要思路:
1. 定义一个`encrypt`函数,用于对姓名和身份证号进行加密。加密方法为,对姓名中的每个字母(大小写均可)按照字母表顺序前移两位(如A变成Y,B变成Z,C变成A,D变成B,以此类推),将加密后的姓名和身份证号拼接起来,再在身份证号后面添加两个随机数字(0-9),使之成为一个六位数的密码。
2. 在主程序中,先询问用户是否登录系统,如果用户输入“否”,则输出“您已退出系统。”;如果用户输入“是”,则要求用户输入姓名和身份证号最后4位,调用`encrypt`函数进行加密,并输出加密后的姓名和密码。
相关推荐
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)