Wo geschieht der "Rücksprung, bei der rekursiven Folge

berserkerdq2

Bekanntes Mitglied
1650918220512.png
Ich habe die Methode selber programmiert.

Das:
1650918285504.png
und das:
1650918291883.png

Konnte ich auch ausgeben. Also mein Ergebnis stimmt.

Das Problem ist, wo muss ich noch Ausgaben machen, damit ich diesen Rücksprung habe? Für dei Aufrufe, habe ich einfach beim Anfang der Methode eine Ausgabe gemacht, wo muss ich das bei den Rücksprüngen machen? Und was gebe ich da dann aus?
 

Anhänge

  • 1650918290931.png
    1650918290931.png
    6,1 KB · Aufrufe: 1

Jw456

Top Contributor
return ggt(b-a, a) ;
zB Was wird hier gemach.
Zuerst wird rechts vom return die Methode ausgeführt und das Ergebnis der Methode als Rückgabe Wert zurückgeben.

Um den RückgabeWert zu sehen. Müsstest du eine Variable benutzen.
Ausgeben und dann mit return zurückgeben.
 

berserkerdq2

Bekanntes Mitglied
Java:
public class Main
{
    public static void main(String[] args) {
        ggt(15,50);
    }
   
   
 static int ggt(int a, int b){
       int ret;
       System.out.println("start  mit "+a+ " , " +b );
       if (a==b){
           return a;
         
       } else if(a < b){
           ret = ggt(b-a,a);
           System.out.println("aufruf mit "+a+ " , " +b+ " return ist " +ret);
           return ret;
       } else {
           ret = ggt(a-b,b);
           System.out.println("aufruf mit "+a+ " , " +b+ " return ist " +ret);
           return  ret;
       }
     
       
    }
}
Code:
start  mit 15 , 50
start  mit 35 , 15
start  mit 20 , 15
start  mit 5 , 15
start  mit 10 , 5
start  mit 5 , 5
aufruf mit 10 , 5 return ist 5
aufruf mit 5 , 15 return ist 5
aufruf mit 20 , 15 return ist 5
aufruf mit 35 , 15 return ist 5
aufruf mit 15 , 50 return ist 5
Danke, mein Problem ist eher, ich darf keine lokalen Variablen verwenden, habe es mir in Java gemacht, bevor ich IJVM geschrieben habe und ich darf halt keine lokalen variablen verwenden weshalb ret= ggt(a-b,b) nicht geht.

DAS VIEL GRÖßERE PROBLEM:

Ich könnte ja einfach sagen ich rufe in IJVM ggt 2x auf 1x für die Ausgabe udn 1x für den Return wert. ABer dann wird das "start mit" doppelt ausgegeben.... daran hängts bei mir
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Was geschieht denn nach einem Exceptionwurf ? Java Basics - Anfänger-Themen 4
D Variablen Rücksprung nach If Abfrage Java Basics - Anfänger-Themen 16
S Tiefensuche Probleme - Der "Rücksprung" Java Basics - Anfänger-Themen 4
M Vector verliert Daten beim Rücksprung im Konstruktor Java Basics - Anfänger-Themen 5
H Den Wert einer rekursiven Funktion bestimmen Java Basics - Anfänger-Themen 5
R Implementieren einer iterativen und rekursiven Klassenmethode. Java Basics - Anfänger-Themen 1
B Hilfe bei einer rekursiven Methode Java Basics - Anfänger-Themen 3
S Rekursiven Stack Java Basics - Anfänger-Themen 6
I Labyrinth auf der Basis eines rekursiven Algorithmus Java Basics - Anfänger-Themen 27
C Rekursiven Programmcode verändern Java Basics - Anfänger-Themen 11
MiMa abbruch innerhalb einer Rekursiven Schleife Java Basics - Anfänger-Themen 5
S Hilfe bei Fehlerfindung einer rekursiven Methode Java Basics - Anfänger-Themen 2
X Probleme beim rekursiven Durchsuchen von Verzeichnissen Java Basics - Anfänger-Themen 1
L Mit rekursiven Aufrufen einen Stack emulieren Java Basics - Anfänger-Themen 1
D Methode mit mehren Rekursiven aufrufen in Methode mit einem Rekursiven Aufruf umwandeln! Java Basics - Anfänger-Themen 1
B JavaKara rekursiven Teppich erstellen??? Java Basics - Anfänger-Themen 5
S Frage zu einer rekursiven Funktion Java Basics - Anfänger-Themen 28
timbeau Endergebnis einer rekursiven Methode Java Basics - Anfänger-Themen 11
G List als Rückgabewert einer rekursiven Methode (Baum) Java Basics - Anfänger-Themen 3
E Mehrfache print ausgabe ohne Schleife oder Rekursiven aufruf? Java Basics - Anfänger-Themen 48
D Problem bei einer Rekursiven Methode Java Basics - Anfänger-Themen 2
A Beschränkung der Anzahl der rekursiven Aufrufe einer Methode Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben