Hi,
ich habe ein Programm zur Berechnung der catalanschen Zahlen mit Rekursion geschrieben. Dazu noch mehrere Methoden. Eine von diesen soll angeben, wie viele Berechnungsschritte notwendig waren, um das geforderte Ergebnis zu zählen. An sich ja kein Problem:
Ich habe eine Klassenvariable mit 0 initialisiert. Jetzt zähle ich diese in jedem Methodenaufruf += 1, sodass dadurch am Ende die Zahl der Methodenaufrufe ausgegeben wird.
Wenn man nun allerdings das Programm wieder für die nächste Zahl ausführt, wird die Klassenvariable logischerweise nicht mehr mit 0 angegeben, sondern dem vorigen Ergebnis.
Bsp:
für catalan(o) wird 1 Berechnungsschritt gebraucht.
für catalan(1) werden 3 benötigt. Das Programm gibt aber 4 aus, da die 1 von catalan(0) dazugerechnet wird.
Wie würdet ihr das Problem angehen?
ich habe ein Programm zur Berechnung der catalanschen Zahlen mit Rekursion geschrieben. Dazu noch mehrere Methoden. Eine von diesen soll angeben, wie viele Berechnungsschritte notwendig waren, um das geforderte Ergebnis zu zählen. An sich ja kein Problem:
Ich habe eine Klassenvariable mit 0 initialisiert. Jetzt zähle ich diese in jedem Methodenaufruf += 1, sodass dadurch am Ende die Zahl der Methodenaufrufe ausgegeben wird.
Wenn man nun allerdings das Programm wieder für die nächste Zahl ausführt, wird die Klassenvariable logischerweise nicht mehr mit 0 angegeben, sondern dem vorigen Ergebnis.
Bsp:
für catalan(o) wird 1 Berechnungsschritt gebraucht.
für catalan(1) werden 3 benötigt. Das Programm gibt aber 4 aus, da die 1 von catalan(0) dazugerechnet wird.
Wie würdet ihr das Problem angehen?