Я знаю, что это не самый простой способ найти палиндром ... но я надеялся, что кто-то скажет мне, есть ли способ конвертировать несколько строк целых чисел в один int , Может быть, это строит одну строку из других? Ниже у меня есть выход, который меняет номер, который вы вводите. Однако он выводится как цепочка отдельных целых чисел. Смогу ли я придумать это в один int, а затем как-нибудь обмануть его с исходным номером? Если я упустил тему, похожую на это, извините. Я проверил и не нашел тот, который четко решил мою проблему.Преобразование нескольких строк в один, а затем синтаксический анализ для int
import java.util.Scanner;
public class Palindrone{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter an integer between 2 and 6 digits:");
int num1 = input.nextInt();
int rev = 0;
//find last number
if(num1 >= 10){
rev = num1%10;
System.out.print(rev);
}
//find 2nd to last and 3rd from last
if(num1 >= 100){
rev = num1%100/10;
System.out.print(rev);
rev = num1%1000/100;
System.out.print(rev);
}
//find 4th from last
if(num1 >= 1000){
rev = num1%10000/1000;
System.out.print(rev);
}
//find 5th
if(num1 >= 10000){
rev = num1%100000/10000;
System.out.print(rev);
}
//find 6th
if(num1 >= 100000){
rev = num1%1000000/100000;
System.out.print(rev);
}
}
}
Я пытаюсь перейти от печати строки (интермедиат об) (интермедиате об) (интермедиате об) (интермедиате оборотах) в один сплошную строку, то преобразование в целом. Затем if (newInt == num1) запускает оператор.
Если вы ищете палиндром, то лучше всего читать в виде строки. Это позволит вам делать любой размер «до» до размера String max. Но если вы хотите пойти этим путем, вы можете иметь «String backwardsNum», а затем конкатенировать строки. так что 'backwardsNum + =/* Что бы там ни происходило * /' –
Очень согласен с Майклом Пикеттом о лучшем способе поиска палдрома. Что касается вашего вопроса о множественных цепочках ints в int ..., вам нужно более четко узнать, что вы хотите. Пожалуйста, укажите хотя бы пример ввода и то, что вы ожидаете от вывода. Как было сказано, это сбивает с толку. – nhouser9
Остерегайтесь цифр '0'. Кажется, вы пытаетесь изменить число, но наоборот '10' -' 1', а не '01'. Если вы хотите, чтобы результат запоминал ведущие нули (от конечных нулей ввода), вам действительно нужно сделать это как строку, а не как число. – Andreas