09:密码翻译
总时间限制: 1000ms 内存限制: 65536kB
描述
在情报传递过程中,为了防止情报被截获,往往需要对情报用一定的方式加密,简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易的识别。我们给出一种最简的的加密方法,对给定的一个字符串,把其中从a-y,A-Y的字母用其后继字母替代,把z和Z用a和A替代,其他非字母字符不变,则可得到一个简单的加密字符串。
输入
输入一行,包含一个字符串,长度小于80个字符。
输出
输出每行字符串的加密字符串。
样例输入
Hello! How are you!
样例输出
Ifmmp! Ipx bsf zpv!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 密码加密解密 通解
String ming = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
String mi = "bcdefghijklmnopqrstuvwxyzaBCDEFGHIJKLMNOPQRSTUVWXYZA";
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
int s = 0;
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);//获取字符串的每个字符
if((ch >= 'a' && ch <='z') || (ch >= 'A' && ch <= 'Z')) {//该字符是否是字母,如果是则
s = ming.indexOf(ch);//获取该字母对应明文下标
System.out.print(mi.substring(s, s+1));//输出密文对应下标
}else {
System.out.print(ch);//非字母则直接输出
}
}
}
}