用java编写一段 字符串加密可以理解为对字符串的一种固定方式的变形,现定义一种基于种子数字的加密方法,首先计算种子数字,计算方法为将该字符串的长度对5求余加1,以该数字为间隔,得到原字符串的子串并求逆得到最终的密码。 输入格式: 原字符串 输出格式: 加密后的字符串 输入样例: 在这里给出一组输入。例如: abcdefghijklmn 输出样例: 在这里给出相应的输出。例如: kfa
时间: 2024-02-16 14:04:14 浏览: 99
好的,以下是Java代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String encryptStr = encrypt(str);
System.out.println(encryptStr);
}
// 加密方法
private static String encrypt(String str) {
// 计算种子数字
int seed = str.length() % 5 + 1;
StringBuilder sb = new StringBuilder();
// 以种子数字为间隔,得到原字符串的子串并求逆
for (int i = str.length() - seed; i >= 0; i -= seed) {
int j = i + seed - 1;
for (; j >= i; j--) {
sb.append(str.charAt(j));
}
}
return sb.toString();
}
}
```
代码中的 `encrypt()` 方法是加密方法,首先计算种子数字,然后以该数字为间隔,得到原字符串的子串并求逆得到最终的密码。主函数中读入原字符串,调用加密方法得到加密后的字符串并输出。
阅读全文