Пишу шифр цезаря на Java с использованием ASCII таблицы. В целом всё работает, однако когда я пошёл к дешифровке шифра, я,хотел перебрать все варианты, и всё бы ничего но получается следующее: Я думал что я не правильно использовал алгоритм шифра Цезаря: (x-key)mod26 где x это буква для шифра key - число на сколько сдвигается алфавит и 26 потому что пишу для английского алфавита, следовательно 26 букв.
Там видно что первые 3 подбора ещё можно понять но после код начинает перебирать всю таблицу. Вопрос, как я могу ограничить символы, чтобы код искал только в промежутке определенных символов, то есть в десятичной системе 65-90 для больших и 97-122 для маленьких букв соответственно.
Код который декодирует шифр:
String decrypted ="";
int keybrute =0;
for(int brute = 0; brute <= 26;brute++){
for(int i = 0; i < detext.length(); i++){
boolean isupper = Character.isUpperCase(detext.charAt(i));
boolean islower = Character.isLowerCase(detext.charAt(i));
if(isupper == true) {
char a = (char)(((int)detext.charAt(i)-keybrute-65)%26+65);
decrypted += a;
}
if(islower == true){
char a = (char)((((int)detext.charAt(i))-keybrute-97)%26+97);
decrypted += a;
}
if(islower == false && isupper == false){
char a = detext.charAt(i);
decrypted += a;
continue;
}
System.out.println("Current key:" + keybrute+ " and current text:" + decrypted);
keybrute++;
decrypted="";
}
System.out.println("Please , choose most comfortable option of key. Thanks");
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Нужна in-app клавиатура,чтобы спокойно мог из разных активити подключатьКод следующий:
друзьяДля работы моей программы требуется:
Могу ли я в своём Android-приложении брать данные из БД MySQl, расположенной на сервере?
У менять есть класс Н, созданный для адаптераВ классе М(адаптер) я вызываю сеттер из класса Н, но его не распознает, подчеркивает краснsv