Hallo
Ich versuche gerade für die FH eine Java-Programm zu schreiben. Es soll darum gehen Rechenaufgaben in ungekehrt polnischer Notation einzulesen und diese auszuwerten. („5 3 + 2 *“ bedeutet „(5 + 3) * 2“ (Klammer weil 5+3 zuerst ausgewertet wird.
Ich habe mir eine Textdatei mit der Zeile „5 3 + 2 *“ geschrieben und diese lasse ich von einem Scanner lesen.
Ich habe folgende Methode:
public String nextOperation() {
String Operation = this.sc.next();
System.out.println(„Op=“ + Operation);
return Operation;
}
[Die Kommandozeile gibt mir aus „Op=+“ - alles soweit ok]
Aber wenn ich die Methode in meiner Main-Methode aufrufe:
S1.pop(S1.nextOperation());
S1.result();
//Gibt mir das Ergebnis auf die Konsole
// pop verknüpft 2 vorher eingelesene Zahlen mit der Übergebenen Rechenoperation. Ein if-Block in der pop-Methode sieht so aus:
if (operation=="/") {
this.result = this.dZahlen[0]/this.dZahlen[1];
System.out.println("/:" + this.result);
Ich bekomme immer nur die Ausgabe „Result: 0.0“ auf die Konsole
Ich hoffe, dass ich es verständlich machen konnte und würde mich über eine kleine Hilfestellung freuen.
Gruss Michael