编写一个加密处理程序,从键盘输入一段英文文字,将其中每个字母用其后的第4个字母代替,最后的字母轮回到前面去数,其他符号不变。例如,a用e代替,z用d代替。
时间: 2023-09-23 07:12:06 浏览: 45
以下是Python的代码实现:
```python
def encrypt(text):
result = ""
for char in text:
if char.isalpha():
if char.isupper():
result += chr((ord(char) + 4 - 65) % 26 + 65)
else:
result += chr((ord(char) + 4 - 97) % 26 + 97)
else:
result += char
return result
text = input("请输入要加密的文本:")
print("加密后的文本为:", encrypt(text))
```
运行程序后,输入要加密的文本,程序会对其中每个字母用其后的第4个字母代替,并将最后的字母轮回到前面去数,其他符号不变,输出加密后的文本。
相关问题
编写一个加密处理程序,从键盘输入一段英文文字,将其中每个字母用其后的第4个字母代替,最后的字母轮回到前面去数,其他符号不变。使用String和StringBuffer类,java代码
以下是一个简单的加密程序,它将输入的字符串中的每个字母用其后的第4个字母代替,并将最后的字母轮回到前面去数。
```java
import java.util.Scanner;
public class Encryptor {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一段英文文字:");
String input = scanner.nextLine();
String output = encrypt(input);
System.out.println("加密后的文字:" + output);
}
public static String encrypt(String input) {
StringBuffer output = new StringBuffer();
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (Character.isLetter(c)) {
// 将字母向后移动4位,如果超出了字母表范围,则轮回到前面去数
char shifted = (char) (c + 4);
if ((Character.isUpperCase(c) && shifted > 'Z') || (Character.isLowerCase(c) && shifted > 'z')) {
shifted -= 26;
}
output.append(shifted);
} else {
output.append(c);
}
}
return output.toString();
}
}
```
这个程序使用了一个 `encrypt` 方法来实现加密。它首先创建一个 `StringBuffer` 对象来保存加密后的字符串,然后遍历输入字符串中的每个字符。如果这个字符是一个字母,就将它向后移动4位,并且如果超出了字母表范围,就将它轮回到前面去数。如果这个字符不是一个字母,就将它直接添加到输出字符串中。最后返回加密后的字符串。
java编写一个加密处理程序,从键盘输入一段英文文字,将其中每个字母用其后的第4个字母代替,最后的字母轮回到前面去数,其他符号不变。例如,a用e代替,z用d代替。
以下是一个简单的Java程序,可以实现对输入的英文文字进行加密处理:
```java
import java.util.Scanner;
public class Encryptor {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一段英文文字:");
String input = scanner.nextLine();
String output = encrypt(input);
System.out.println("加密后的文字为:" + output);
}
public static String encrypt(String input) {
char[] chars = input.toCharArray();
for (int i = 0; i < chars.length; i++) {
char c = chars[i];
if (c >= 'a' && c <= 'z') {
chars[i] = (char) ('a' + (c - 'a' + 4) % 26);
} else if (c >= 'A' && c <= 'Z') {
chars[i] = (char) ('A' + (c - 'A' + 4) % 26);
}
}
return new String(chars);
}
}
```
程序中,首先读入一段英文文字,然后调用 `encrypt` 方法对输入进行加密处理,并输出加密后的结果。
在 `encrypt` 方法中,首先将输入字符串转换为字符数组,然后对每个字符进行处理。如果是小写字母,则用其后的第4个字母代替,并且将超过字母表最后一个字母的部分轮回到前面去;如果是大写字母,则同样进行相同的处理。其他符号则不做处理。
最后将处理后的字符数组转换为字符串并返回即可。