Methode muss zwei Werte zurückgeben

Neue Frage »

Auf diesen Beitrag antworten »
Lycaner Methode muss zwei Werte zurückgeben

Guten Abend
Ich habe eine Methode und die muss zwei int zurückgeben. Ich habe im Internet zwei Varianten gesehen, wie man es machen könnte aber keine der beiden funktioniert bei mir. Wo ist mein fehler?

public Bruch addiere(Bruch summand2){
int ergZähler;
int ergNenner;
ergZähler=this.holeZähler()*summand2.holeNenner()
+summand2.holeZähler()*this.holeNenner();
ergNenner=this.holeNenner()*summand2.holeNenner();
}/*
public int getZähler(){
return ergZähler;
}
public int getNener(){
return ergNenner;
}*/
private ergebnis(int ergZähler, int ergNenner){
this.ergZähler=ergZähler;
this.ergNenner=ergNenner;
return ergebnis(int ergZähler, int ergNenner);
}
 
Auf diesen Beitrag antworten »
Karlito

Hallo,

für das nächste mal wäre es schön wenn Du die Programmiersprache mit angibst.

In Java und C# (danach sieht es aus) kann man nicht mehr als einen Rückgabewert zurückgeben.

Um soetwas zu realisieren muss man ein Objekt oder ein Struct (Struct gibt es nur in C#) zurückgeben.

Wie genau lautet denn deine Aufgabenstellung?

VG,

Karlito
Auf diesen Beitrag antworten »
Lycaner

Ich muss Java machen.
Die Aufgabenstellung lauten, programmieren Sie ein Methode die zwei Brüche addiert.
Da ich das Ergebnis als Bruch zurück haben will, dachte ich, zwei int zurückzugeben. Eins für Zähler und eins für Nenner.
Auf diesen Beitrag antworten »
Lycaner

Ich glaube ich habe es jetzt

public Bruch addiere(Bruch summand2){
int ergZähler;
int ergNenner;
ergZähler=this.holeZähler()*summand2.holeNenner()
+summand2.holeZähler()*this.holeNenner();
ergNenner=this.holeNenner()*summand2.holeNenner();
Bruch ergebnis = new Bruch(ergZähler,ergNenner);
return ergebnis;
}
 
Auf diesen Beitrag antworten »
Karlito

Ja, genau so kann das Funktionieren.

Es gibt jedoch auch die Möglichkeit, die Methode Add so anzupassen, dass der Wert des Bruches, bei dem die Methode Add aufgerufen wurde angepasst wird. Hast du also zwei Variablen vom Typ Bruch (bruch1, bruch2), so würde sich bei bruch1.Add(bruch2); ergeben, dass in bruch1 direkt das Ergebnis steht. Dabei geht jedoch der alte Wert von bruch1 verloren.
Alternativ könnte man noch eine statische Methode Add einführen, welche zwei Parameter von Typ Bruch hat und diese beiden Brüche addiert.

VG,

Karlito
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »