Hallo allseits,
ich habe schon seit einige Stunden ein Problem und komme da auch wirklich nicht weiter und würde mich sehr freuen, wenn Ihr mir weiter helfen würdet.
Also wir haben eine 24 Stellige Zahl:
[code=Java]String zahlen = "123456780000123456131400";[/code]
Davon werden die ersten neun Zahlen herausgeschnitten und mit modulo 97 gerechnet. Daraus folgt dann:
[code=Java]String neunStellig = zahlen.substring(0,9);
...
neunStellig % 97 ergibt 30[/code]
Das Ergebnis wird nun vorne an die verbliebene 15 stellige Zahlen hinzugefügt:
[code=Java]30000123456131400[/code]
Nun sollen wieder die ersten 9 Zahlen herausgeschnitten und wieder mit modulo 97 gerechnet werden:
[code=Java]300001234[/code]
Das Ergebnis wird wieder vorne hinzugefügt und das ganze soll sich wiederholen bis keine restlichen Ziffern mehr vohanden sind.
Also es sollten folgende Ergebnisse rauskommen:
[code=Java]123456780000123456131400:
123456780 modulo 97 = 30
300001234 modulo 97 = 22
225613140 modulo 97 = 64
640 modulo 97 = 58.[/code]
58 käme dann als end-Ergebnis raus.
So ungefähr habe ich es versucht aber ich komme nicht weiter:
[code=Java]Pseudocode:
String zahlen = "123456780000123456131400";
int len = zahlen.length();
int sum = 0;
while(len < 0){
String neueZahlen = zahlen.substring(0, 9);
int nZahlen = Integer.parseInt(neueZahlen);
sum = nZahlen % 97;
String sumToString = Integer.toString(sum);
String newLaenge = sumToString+ restliche Länge;
-> Wie bekomme ich die restliche Länge
-> Wie kann ich die restliche Länge bis zu 9. Stelle schneiden
Und das ganze wieder von vorne bis keine Zahl mehr übrig bleibt.
}
[/code]
Ich freue mich auf die schnelle und hilfreiche Antworten.
Lg