# wer kann helfen?



## anne_ric (9. Mrz 2004)

Brauche ein Programm , das zulässige, geklammerte Ausdrücke einliest und berechnet, wobei zulässige Ausdrücke wie folgt aufgebaut sind: 

Die Eingabewerte sind ganzzahlig und der Ausdruck wird vollständig übergeben, d.h. als vollständige Zeile oder als Datei. Als Operatoren können  + (Addition), - (Subtraktion), * (Multiplikation),  / (ganzzahlige Division ohne Rest), und **2 ( Quadrierung ) auftreten, wobei die Operanden auch mathematisch geklammert sein können ( Klammersymbole ( oder ) ). Als Trennzeichen fungiert das Leerzeichen; eine Folge von Trennzeichen ist einem einzelnen Trennzeichen gleichwertig. Vor und hinter jedem Operator darf ein Trennzeichen stehen, braucht es aber nicht. Ein Zeilenende-Zeichen beendet einen Ausdruck. 

Das Programm erfüllt folgende Anforderungen/Funktionen: 

Lesen und Berechnung werden wiederholt, bis das Dateiende-Zeichen erreicht wird. Die Umleitung der Eingabe in eine Datei ist möglich, d.h. Dateien mit zulässig geklammerten Ausdrücken können zur Auswertung an das Programm übergeben werden.
Das Programm sieht (mindestens) für folgende Fälle verschiedene Fehlermeldungen vor: 
Unzulässige Eingaben ( Aufgabe: welche unzulässigen Eingaben können entstehen ??? ). 
Bereichsüberschreitungen beim Rechnen. 


Wer kann helfen??

Danke im Voraus

anne


----------



## Beni (9. Mrz 2004)

Hört sich interessant an...

Werde mal schauen, ob ich da was zusammenbauen kann. *Aber ohne Garantie!*


----------



## Guest (9. Mrz 2004)

das wäre sehr nett!!! ich bin auch beim probieren!!


----------



## Beni (9. Mrz 2004)

So, ich hab mal eine erste Version geschrieben.

Sie ist noch nicht debugged oder getestet, aber ein paar Grundrechnungen schafft sie bereits ohne Exception  :wink: 

Hier mal der Quellcode. Ich werde noch ein bisschen dram rumbasteln.
http://n.ethz.ch/student/besigg/forum/mathe.zip

mfg Beni


----------



## Beni (10. Mrz 2004)

Hab eine neue Version raufgeladen.

Jetzt können auch Ausdrücke wie "2+6*-5" richtig berechnet werden.

mfg Beni


----------

