Вопрос был дан нам на нашем экзамене на прошлой неделе. Нам было предложено создать класс, который можно было бы использовать для ввода строки и числа, где символы строки перемещают столько же пробелов, сколько введенное число.Начальная Java: основная программа шифрования (Ceasar Cipher)
Существует две вещи, о которых следует помнить. Во-первых, дело не имеет значения. Выход может быть в одном и том же случае или может быть стандартизирован. Два, если A и 2 вводятся, Y - это то, что мы получаем. Алфавиты ходят.
Пример ввода:
I Love Java
Пример вывода:
G JMTC HYTY
Это то, что я придумал во время экзамена (это было написано, поэтому у меня не было возможности проверить, сработало ли это). Когда я собирал и запустил его, вот что я получаю -
Пример ввода:
I Love Java
Пример вывода:
G8JMTC8HYTY
Я пробовал еще несколько слов, и поэтому в основном вот что происходит. Пространства заменяется числом, которое 10- (
import java.util.*;
public class ENCRYPT
{
static void main()
{
Scanner in=new Scanner(System.in);
System.out.println("Enter the string");
String a=in.nextLine();
a=a.toLowerCase();
System.out.println("Enter the encrption value");
int m=in.nextInt();
String x=""; char ch;
for(int i=0; i<a.length(); i++)
{
ch=a.charAt(i);
if((int)ch-97<m)
{
x=x+(char)((123-m)+(int)ch-97);
}
else if(ch==' ')
{
x=x+' ';
}
else
{
x=x+(char)((int)ch-m);
}
}
System.out.println(x.toUpperCase());
}
}
Я думаю, что вы хотите реализовать Цезарь Cipher ... – Naruto
Если бы этот вопрос был достаточно анс Пожалуйста, отметьте сообщение, которое решило вашу проблему как «принятое», щелкнув галочку в ответе. В заголовке вашего вопроса нет необходимости ставить «принято». –