Программа должна предложить пользователю выбрать, должно ли сообщение быть закодировано или декодировано, а затем предлагает пользователю ввести сообщение. Пробел используется для разделения каждого слова в сообщении, а точка (.) Используется для обозначения конца предложения. Отдельные методы должны использоваться для кодирования и декодирования входного сообщения.
Схема: A -> Z, B -> Y, C -> X, .... X -> C, Y -> B, Z -> A
Я думаю всевсе в порядке, кроме логики метода кодирования и декодирования.
import java.util.Scanner;
public class Project1
{
public static void main( String [] args )
{
Scanner input = new Scanner(System.in);
System.out.println(" ");
System.out.print( "Press 1 for Encoding, 2 for Decoding: " );
int x = input.nextInt();
String temp = input.nextLine();
System.out.println(" ");
System.out.print( "Enter message: ");
String message = input.nextLine();
System.out.println(" ");
if ( x == 1)
{
encodeMessage( message );
}
else if ( x == 2 )
{
decodeMessage( message );
}
else
System.out.print("Invalid response");
}
public static void encodeMessage(String message)
{
for (int i = 0; i < message.length(); i++)
{
char x = message.charAt(i);
System.out.print((char)(27 - x));
}
}
public static void decodeMessage (String message)
{
for (int i = 0; i < message.length(); i++)
{
char x = message.charAt(i);
System.out.print((char)(27 - x));
}
}
}
Когда я ввожу сообщение, на нем отображаются вопросительные знаки.