Написал алгоритм, который шифрует текст методом Цезаря, с помощью таблицы ASCII: Моя программа шифрует строки, в которых используются русские и английские буквы, различные знаки препинания, пробелы и т.д.
public class Chifr2 {
public static void main(String[] args) {
String str = "ннн ААА 000 <> ZZZ yyy"; //вводимый текст
int key = 3;
String new_str = "";
String d = "";
int c = 0;
int y = 0;
System.out.println((int) 'Я'); // здесь узнаем код буквы
for (int j =0;j<str.length();j++) {
int a = str.charAt(j);
if (a <= 1071 && a>=1040) {
c = (str.charAt(j) + key);
y = (c - 1040) % 32 + 1040; // 1040 - это код буквы А, 32 - это кол-во букв
new_str += (char) y; // получаем букву по коду
}
else if (a>1071){
c = (str.charAt(j) + key);
y = (c - 1072) % 32 + 1072; // 1072 - это код буквы а, 32 - это кол-во букв
new_str += (char) y; // получаем букву по коду
}
else if (a>=32 && a<=47){
c = (str.charAt(j)+key);
y = (c - 32) % 16 + 32;
new_str += (char) y;
}
else if (a>47&&a<=57){
c = (str.charAt(j)+key);
y = (c - 47) % 10 + 47;
new_str += (char) y;
}
else if (a>57&&a<=64){
c = (str.charAt(j)+key);
y = (c - 57) % 7 + 57;
new_str += (char) y;
}
else if (a>64&&a<=90){
c = (str.charAt(j)+key);
y = (c - 64) % 26 + 64;
new_str += (char) y;
}
else if(a>=97&&a<=122){
c = (str.charAt(j)+key);
y = (c - 97) % 26 + 97;
new_str += (char) y;
}
}
System.out.println( new_str); // выводимый текст
}
}
Никак не могу понять как мне сделать расшифровку данного шифра (то есть как мне сделать так, чтобы ключ был отрицательным, но шифрование всё равно происходило правильно)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Я новичок в Java и Android Studio, решил сделать Spinner для переключения темы приложения в настройках, но программа работает не корректно
Пробую найти правильное регулярное выражение, никак не выходит
Не получается выполнить задание, условие которого следующее: ТРАНСПОЗИЦИЯ С ФИКСИРОВАННЫМ ПЕРИОДОМ: В этом случае сообщение делится на группы...
Вопрос такой: Как подключить несколько БД к Spring Boot?