Так что я создал программу, которая сделала палиндромные числа на основе проекта this. Моя программа будет работать для меньших чисел, но целое число может вычислять только небольшое количество чисел, поэтому я изменил необходимые целые числа на BigInteger(). После этого я столкнулся с некоторыми проблемами, на которые я действительно не уверен. Кто-нибудь будет советоваться о том, как сделать эту работу?Переключен на BigInteger и прогам уже не запускается
public class Main {
public static final boolean DEBUG = false;
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//gets the number from the console
int number = input.nextInt();
if(DEBUG) System.out.println("Got your number!");
if(DEBUG) System.out.println("Bout to makePalendrome!");
makePalendrome(number);
}
public static boolean isPalendrome(BigInteger number){
String numberString = number.toString();
for(int i = 0; i < numberString.length(); i++){
if(numberString.charAt(i) != numberString.charAt(numberString.length() - 1 - i)) return false;
}
return true;
}
public static void makePalendrome(int input){
int steps = 0;
BigInteger number = new BigInteger((input + ""));
if(isPalendrome(number)) printResult(input, steps, number);
while(!isPalendrome(number)){
String numberString = number.toString();
String reversed = "";
for(int i = 0; i < numberString.length(); i++){
reversed += numberString.charAt(numberString.length() - 1 - i);
}
BigInteger numReversed = new BigInteger(reversed);
number.add(numReversed);
steps++;
}
printResult(input, steps, number);
}
public static void printResult(int number, int steps, BigInteger palendrome){
System.out.printf("The number %d becomes palendromic after %d steps, and becomes the number: %d%n", number, steps, palendrome);
System.exit(0);
}
}
Это один из тех редких случаев, когда это лучше всего использовать строку во всем. – Bathsheba
Какова конкретная проблема? – kevcodez
«После этого я столкнулся с некоторыми проблемами, которые я действительно не уверен» - какие проблемы? Также старайтесь избегать 'System.exit', это делает код трудно следовать. При необходимости выведите исключение. –