UPN Stack Calculator

Need_Help1993

Bekanntes Mitglied
Huhu Männer ;)
Ich soll einen kleinen Stack Taschenrechner erstellen.
Das ganze bassiert auf der umgekehrten Polnischen Notation.
Also z.B. 1+2 = 12+

Dazu soll ich eine Klasse StackCalculator erstellen.
push() nimmt eine neue Zahl in den Stack auf
pop() hebt das Ergebnis (Zahl mit Index 0 im Stack) ab.

mit void add(), void sub(), void mul() und void div() kann man die Rechnugnegn ausführen.

WICHTIG: Ein Rechenaufruf nimmt immer die ersten Beiden Zahlen vom Stack!

1-2*3 wäre also push(1), push(2), push(3), mul(), sub(), pop()

so weit verstehe ich das ganze auch prima.
Ich weiß nur nicht so recht wie ich das ganze implementieren soll....
ich habe da mal einen kleinen Anfang, der in meinen AUgen allerdings nicht sehr vielversprechend ist....

Java:
import java.util.LinkedList;

public class StackCalculator extends LinkedList<Double>{
	void LinkedList() {}

	public void push(int a){}
		
public static void main(String[] args){
	}
}

wäre echt nett, wenn mir da jemand weiterhelfen könnte ;)
 

Need_Help1993

Bekanntes Mitglied
habe nun ein stückchen weiter gemacht.... aber so wird das immer noch nichts....
Java:
import java.util.LinkedList;

public class StackCalculator extends LinkedList<Double>{
	void LinkedList() {}

	public int push(int a){
		push(1);
		push(2);
		push(3);
		pop();
		return a;
		}
	
	void add (){
		return(a+b);}
	void sub(){
		return (b-a);}
	void mul(){
		return (a*b);}
	void div(){
		return (b/a);}

		
	public static void main(String[] args)
    {
	StackCalculator sc = new StackCalculator();
	Gui gui = new Gui(sc);
    }
}

für weitere Hilfe wäre ich euch sehr verbunden ;)
 

Manu3991

Mitglied
Also du musst eigentlich lediglich die 4 Methoden void add(), void sub(), void mul(), void div() implementieren. Die Aufgabe ist eigentlich recht einfach aber kompliziert gestellt.

Main Methode is übrigens in der Klasse Gui.java, welche du auch ausführen musst!
Und warum gibst du bei deinen 4 Methoden was zurück, obwohl return type = void ist? :)

lg
 

265141729

Neues Mitglied
Es bringt nicht wirklich viel, hier zu schreiben "hab die Lösung eh schon", und sie nicht zu präsentieren. In Foren ist es nämlich generell so, dass man sich gegenseitig hilft. Und wenn du keine Lösung für das Problem präsentierst, wird man dir in Zukunft wahrscheinlich auch keine Hilfe mehr zu deinen künftigen Problemen geben.
Ist ja nicht das erste Mal, dass jemandem aus dem Kurs hier geholfen wird...
 

Neue Themen


Oben