Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Mit String rechnen » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 5 Beiträge
Björn

Vielen Dank :-)
eulerscheZahl

Im Anhang.
Mein Code kann aber einiges mehr, also nicht erschrecken wegen der Länge (>500 Zeilen). Dein Problem kriegt man auch mit weniger gelöst.

Verwendung:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
Parser p = new Parser("123+546+345");
System.out.println(p.calc(new HashMap<String, Double>())); //1014.0

Parser p2 = new Parser("x+3*y");
HashMap<String, Double> input = new HashMap<>();
input.put("x", 2.0);
input.put("y", 3.0);
System.out.println(p2.calc(input)); //11.0

Parser p3 = new Parser("x^3*sin(x)");
System.out.println(p3.derive("x")); //3*x^2*sin(x)+x^3*cos(x)


Dateianhang:
zip Parser.zip (3,13 KB, 376 mal heruntergeladen)
Björn

Danke für die schnelle Antwort. Leider sind es die 4 Grundrechenarten wo vorhanden sein müssen. Wäre super, wenn du den Code hochladen könntest :-)
eulerscheZahl

Kommt ganz darauf an, die komplex der string ist. Wenn es nur + Zeichen sind, tut es ein test.split('+'). Das gibt dir ein Array, wo du die Zahlen einzeln parsen kannst.

Wenn es komplizierter wird (Funktionen, verschachtelte Klammerausdrücke, ...) geht das nicht so einfach, da empfehle ich einen Binärbaum, um die Struktur zu erfassen. Ich habe sowas für die Projektarbeit gebraucht, wenn du willst, kann ich den Code hochladen.
Björn Mit String rechnen

Meine Frage:
Hi zusammen,

den ganzen Tag zerbreche ich mir jetzt schon den Kopf über das Thema, wie ich einen String berechnen kann.

Als Beispiel:

code:
1:
 String test = "123+546+345"; 


Wenn ich versuche den kompletten String zu parsen, bekomme ich eine Exception. Dann dachte ich mir, es mal mit substrings zu versuchen, allerdings sehr aufwendig und ziemlich erfolglos.



Meine Ideen:
Habt ihr vielleicht die zündenen Idee für mich?

Vielen Dank :-)