Hallo zusammen!
Bin neu hier und wusst nicht, wo ich das Thema posten soll... Ich muss für die Schule ein Palindrom-Programm als Java-Application machen. Das ist mir eigentlich soweit auch geglückt.. Das Programm schaut nach, ob die Zehl ein Palindrom ist - wenn nicht, dreht es die Zahl um, addiert die beiden Zahlen und überprüft wieder... Jedoch kommt er bei der berühmten Zahl 196 ins schwitzen. Ich kenn mich leider nicht mit BigInteger aus, und wollt euch deswegen um Hilfe bitten. Hab schon etwas damit rumgetüfftelt, aber das Internet spuckt nicht viele Infos über Big Integer aus....
David
Hier ist der Ausschnitt vom Programm... Ist es möglich, den Quelltext so zu ändern, dass mit BigInteger gearbeitet wird?
Bin neu hier und wusst nicht, wo ich das Thema posten soll... Ich muss für die Schule ein Palindrom-Programm als Java-Application machen. Das ist mir eigentlich soweit auch geglückt.. Das Programm schaut nach, ob die Zehl ein Palindrom ist - wenn nicht, dreht es die Zahl um, addiert die beiden Zahlen und überprüft wieder... Jedoch kommt er bei der berühmten Zahl 196 ins schwitzen. Ich kenn mich leider nicht mit BigInteger aus, und wollt euch deswegen um Hilfe bitten. Hab schon etwas damit rumgetüfftelt, aber das Internet spuckt nicht viele Infos über Big Integer aus....
David
Hier ist der Ausschnitt vom Programm... Ist es möglich, den Quelltext so zu ändern, dass mit BigInteger gearbeitet wird?
Code:
for(int x=0; x<200; x++){ // beginne for-Schleife
count = 0;
sEingabe = ""+x;
bcheck = Pal(sEingabe); // Palindrom?
if(bcheck == true) { // Palindrom
lEingabe = Long.parseLong(sEingabe);
biggest[x] = lEingabe;
}
else { // kein Palindrom
do{ //------------------------beginn-------------------------------------
count++;
sUmtausch = new StringBuffer(sEingabe).reverse().toString();
lEingabe = Long.parseLong(sEingabe); // aus String werde Long
lUmtausch = Long.parseLong(sUmtausch);
lErgebnis = lEingabe + lUmtausch;
if(lErgebnis > biggest[x])
biggest[x] = lErgebnis;
if(count > longest[x])
longest[x] = count;
sEingabe = ""+lErgebnis;
bcheck = Pal(sEingabe); // ist es jetzt ein Palindrom?
//-----------------------ende---------------------------------------------
}while(bcheck == false); // Solange ausführen, bis ein Palindrom vorhanden ist!
}
System.out.println("biggest["+x+"]: "+biggest[x]);
System.out.println("longest["+x+"]: "+longest[x]+"\n\n");
}
}