Как я решаю эту ошибку в ожидаемом pub.out?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я решаю эту ошибку в ожидаемом pub.out?

Сообщение Anonymous »

Изображение пабов здесь Первый столбец - это мой Pub.out
Second - это ожидаемый Pub.out
Я не знаю, что делать, я уже пытаюсь игнорировать не Char, но не решил.
Мне нужно имитировать Caesar Cypher.
Я пытался поменять без Chars #, но тоже не решил. /> Это алгоритм: < /p>
import java.util.Scanner;

public class Cypher {
public static String cypher(String word, int key) {

char[] alpha = {
'a','b','c','d','e','f','g','h','i','j','k','l','m',
'n','o','p','q','r','s','t','u','v','w','x','y','z'
};

char[] alphaUpper = {
'A','B','C','D','E','F','G','H','I','J','K','L','M',
'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'
};

StringBuilder result = new StringBuilder();

for (int i = 0; i < word.length(); i++) {
char actual_char = word.charAt(i);
boolean found_letter = false;

for (int j = 0; j < alphaUpper.length; j++) {
if (alphaUpper[j] == actual_char) {
int new_index = (j + key) % alphaUpper.length;
result.append(alphaUpper[new_index]);
found_letter = true;
break;
}
}

if (!found_letter) {
for (int j = 0; j < alpha.length; j++) {
if (alpha[j] == actual_char) {
int new_index = (j + key) % alpha.length;
result.append(alpha[new_index]);
found_letter = true;
break;
}
}
}

if (!found_letter) {
result.append(actual_char);
}
}
return result.toString();
}

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int key = 3;
String entry;

while (true) {
entry = scanner.nextLine();
if (entry.equals("FIM")) {
break;
}

String word_cypher = cypher(entry, key);
System.out.println(word_cypher);
}
scanner.close();
}
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... ed-pub-out

Вернуться в «JAVA»