Шифр Виженера на Eclipse
Помогите реализовать шифр Виженера на Eclipse java, ну или хотя бы сайт где есть подобные запросы
Помогите реализовать шифр Виженера на Eclipse java, ну или хотя бы сайт где есть подобные запросы
Только для строчных латинских букв. Остальные символы игнорируются:
public class q89022392 {
static String cript(String str, String key) {
StringBuilder sb = new StringBuilder();
int k = 0;
for (int c = 0; c < str.length(); ++c) {
char e = str.charAt(c), w = key.charAt(k);
sb.append(e >= 'a' && e <= 'z' ? (char)((e - 'a' + w - 'a') % 26 + 'a') : e);
k = (k + (e >= 'a' && e <= 'z' ? 1 : 0)) % key.length();
}
return sb.toString();
}
static String decript(String str, String key) {
StringBuilder sb = new StringBuilder();
int k = 0;
for (int c = 0; c < str.length(); ++c) {
char r = str.charAt(c), w = key.charAt(k);
sb.append(r >= 'a' && r <= 'z' ? (char)((r - w + 26) % 26 + 'a') : r);
k = (k + (r >= 'a' && r <= 'z' ? 1 : 0)) % key.length();
}
return sb.toString();
}
static public void main(String[] args) {
String s = "hello, world!";
String cs = cript(s, "keyword");
System.out.println("initial line: " + s);
System.out.println("encoded line: " + cs);
System.out.println("decoded line: " + decript(cs, "keyword"));
}
}