Wie kann bei JAVA Taschenrechner erstellen?

...komplette Frage anzeigen

2 Antworten

Um einen Taschnerechner zu programmieren, muss dein Rechner folgende Schritte ausführen können:

  1. Eine Rechnung in der Infix-Notation erhalten. (Sowas wie 3+4; wichtig: das Rechenzeichen ist zwischen den Zahlen, deshalb INfix.) Ob es die über ein Fenster oder die Konsole erhält ist hierbei unwichtig. Schließlich geht es primär ums rechnen.
  2. Dein Taschenrechner muss den Input (der ja ein String ist) in eine List<String> umwandeln, die die einzelnen Bestandteile enthält.
  3. Diese Bestandteile werden dann in die Postfix-Notation umgewandelt. (Die Schritte 2 und 3 kann man gleichzeitig ausführen.) Diese sieht so aus: aus 3+4 wird 34+. Aus 3*4+5 wird 34*5+. Das sieht jetzt erst einmal unsinnig aus, aber dadurch kannst du später ohne Probleme Klammerrechnung möglich machen. (Um mehr darüber zu erfahren, google einfach mal nach "Postfix-notation".)
  4. Jetzt rechnest du das ganze aus. Dazu nimmt der Rechner immer das erste Element der Liste und fügt es einem Stack hinzu, und zwar so lange, bis er auf das erste Rechenzeichen stößt. Dann nimmt die obersten beiden Zahlen vom Stack, rechnet sie it dem Rechenzeichen aus und legt sie wieder oben auf den Stack. (Wenn du mehr über die Funktionsweise eines Stacks erfahren willst: googlen oder fragen ;-))
  5. Und jetzt musst du nur noch die Lösung ausgeben.

Was möchtest Du wissen?