Computer Hardware Forum - TweakPC

Computer Hardware Forum - TweakPC (https://www.tweakpc.de/forum/)
-   Programmiersprachen (https://www.tweakpc.de/forum/programmiersprachen/)
-   -   Java - Rechnen mit Strings (https://www.tweakpc.de/forum/programmiersprachen/86920-java-rechnen-mit-strings.html)

Kodak 08.05.2012 09:28

Java - Rechnen mit Strings
 
Hallo Leute,

ich habe heute mal eine an die Programmierer von uns gerichtete Frage. Und zwar haben wir die Aufgabe bekommen, eine Klasse GrosseZahlen zu erstellen, die nicht an die Grenze der Zahlengröße der Integer gebunden ist. Demnach sollen die Zahlen als String erstellt werden.

In dieser Klasse gibt es unter anderem zwei Methoden. Die eine soll überprüfen, ob ein String echt kleiner ist als der andere und die andere Methode soll zwei Strings addieren und die Summe wieder zurückgeben.

Meine Frage ist jetzt, ob ihr eine Idee für einen Ansatz habt um diese zwei Methoden umzusetzen. Meine erste Idee war, die Strings in Integer zu parsen und dann zusammenzurechnen. Aber dann ist mir eingefallen... :inflames:

Ein Kriterium ist, dass die Klasse BigInteger nicht benutzt werden darf.

Über Ideen und Vorschläge wäre ich wirklich sehr dankbar.

DonSchado 08.05.2012 12:02

AW: Java - Rechnen mit Strings
 
Ich hab zwar lange kein Java mehr geschrieben,
aber was ist denn wenn du die Strings einfach in Binärform bringst?
Dann kannst du in Ruhe rechnen und gibst das Ergebnis als Zahlenstring wieder aus.

Vielleicht geht das auch mit Byte-Arrays?

Tweak-IT 08.05.2012 15:31

AW: Java - Rechnen mit Strings
 
Da hatte jemand das gleiche Problem inklusive Lösung zwar auf Englisch aber das sollte ja kein Problem darstellen :-)

[url=http://stackoverflow.com/questions/5318068/very-large-numbers-in-java-without-using-java-math-biginteger]Very Large Numbers in Java Without using java.math.BigInteger - Stack Overflow[/url]

redfalcon. 11.05.2012 13:16

AW: Java - Rechnen mit Strings
 
Die Strings nach einzelnen Buchstaben außeinandernehmen, in int umwandeln (bei 0-9 ist man ja nicht an MAX_INT gebunden) und dann mit Übertrag addieren. Das Ergebnis einer einzelnen Addition dann wieder in einen String umwandeln und am Schluss zusammensetzen.


Der Kommentar auf SO ist aber auch gut:
[quote]
By using some other big integer library
[/quote]

Auch ne Möglichkeit, abhängig davon wofür das ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:34 Uhr.

Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.