从键盘输入一批字符,以@结束,按要求加密并输出。
时间: 2024-12-23 15:26:27 浏览: 4
cpp代码-从键盘输入一串字符,以回车键结束,分别统计输入的字母、数字和其它字符的个数
当需要对用户通过键盘输入的一批字符进行加密时,通常会使用某种加密算法,如简单的替换密码、凯撒密码或者更高级的AES等。这里假设我们简单地使用Caesar Cipher(凯撒密码)为例,其中每个字符向后移动固定位数。例如,如果规定将所有字符向后移两位,输入"hello@"就会变成"khoor@"。
下面是基本的步骤:
1. 用户输入一系列字符直到遇到'@'作为结束标记。
2. 对于输入的每一个字符,如果是字母(区分大小写),就按照指定的偏移量(比如+2)在字母表中循环移位;对于非字母字符(如空格、标点等),保持原样。
3. 将处理后的字符拼接起来形成加密字符串。
如果你想要一个具体的Python示例,可以参考下面这个简化的版本:
```python
def caesar_cipher_encrypt(input_string, shift):
encrypted_text = ""
for char in input_string:
if char.isalpha():
shift_amount = shift % 26
if char.islower():
new_char = chr((ord(char) - ord('a') + shift_amount) % 26 + ord('a'))
else:
new_char = chr((ord(char) - ord('A') + shift_amount) % 26 + ord('A'))
else:
new_char = char
encrypted_text += new_char
return encrypted_text
input_str = input("请输入字符序列直到遇见 '@' 结束:")
shift = int(input("请输入加密偏移量:"))
encrypted = caesar_cipher_encrypt(input_str, shift)
print(f"加密后的字符串为:{encrypted}")
```
阅读全文