Hi,
ich mochte u.a. aus Übungszwecken mit dem Thema Rekursion eine Rek. Methoden schreiben die mir einen Bruch potenziert.
Hab ich soweit hinbekommen, allerdings nur in der Form, das der fertig und auch richtig potenzierte Bruch als Return Value zurück kommt.
Jetzt hab ich aber versucht den Bruch so zu potenzieren, das der Bruch für den ich die Methode aufrufe das potenzierte Ergebniss tragen soll und das krieg ich zum verrecken nicht hin.
hier mal mein code, was muss ich ändern damit ich in "myBruch" das Ergebnis der potenzierung drin hab?
egal was ich ändere, das ergebnis verfälscht sich.
ich mochte u.a. aus Übungszwecken mit dem Thema Rekursion eine Rek. Methoden schreiben die mir einen Bruch potenziert.
Hab ich soweit hinbekommen, allerdings nur in der Form, das der fertig und auch richtig potenzierte Bruch als Return Value zurück kommt.
Jetzt hab ich aber versucht den Bruch so zu potenzieren, das der Bruch für den ich die Methode aufrufe das potenzierte Ergebniss tragen soll und das krieg ich zum verrecken nicht hin.
hier mal mein code, was muss ich ändern damit ich in "myBruch" das Ergebnis der potenzierung drin hab?
Code:
public class Bruch {
private long zaehler, nenner;
Bruch()
{
zaehler = 0;
nenner = 1;
}
Bruch(long z, long n)
{
zaehler = z;
nenner = n;
}
public void printBruch()
{
System.out.println("Zaehler: "+ this.zaehler + " | Nenner: " + this.nenner);
}
public Bruch powBruch(int pow)
{
if (pow == 1)
return this;
return (this.multiply(powBruch(pow-1)));
}
public Bruch multiply(Bruch b)
{
return new Bruch(this.zaehler * b.zaehler,
this.nenner * b.nenner);
}
public Bruch mutliply(Bruch b)
{
this.zaehler *= b.zaehler;
this.nenner *= b.nenner;
return this;
}
/**
* @param args
*/
public static void main(String[] args) {
Bruch myBruch = new Bruch(3,5);
Bruch m2;
m2 = myBruch.powBruch(3);
myBruch.printBruch();
m2.printBruch();
// TODO Auto-generated method stub
}
}
egal was ich ändere, das ergebnis verfälscht sich.