Methoden Rekursive Methode berechnen

Diskutiere Rekursive Methode berechnen im Hausaufgaben Forum; Hallo, ich komme bei dieser Aufgabe nicht weiter. Man soll diese rekursive Methode berechnen mit den Parameter f(11, 8). Kann mir jemand weiter...

  1. dan1996
    dan1996 Neues Mitglied
    Hallo, ich komme bei dieser Aufgabe nicht weiter. Man soll diese rekursive Methode berechnen mit den Parameter f(11, 8). Kann mir jemand weiter helfen wie man das berechnen soll

    Code (Java):
    static int f(int x, int y) {
              if (x == 1)
                return y + 1;
              else if (x == y)
                  return f(x - 2, y);
            else
                  return f(x % 2, f(x - 2, y + 1) + 2);
          }
     
  2. Vielleicht hilft dir dieser Kurs hier weiter.
  3. Robat
    Robat Bekanntes Mitglied
    Du gehst die Methode Schritt für Schritt durch und schreibst dir die jeweiligen Werte auf, solange bis die Rekursion terminiert.
     
  4. dan1996
    dan1996 Neues Mitglied
    Danke aber ich bekomme es mit nicht hin, wenn ich 2 Werte im Parameter habe.. mit einem Wert ist das kein Problem
     
  5. mihe7
    mihe7 Bekanntes Mitglied
    Warum nicht?
     
  6. httpdigest
    httpdigest Bekanntes Mitglied
    Eine gute Weise bei solchen Aufgaben/Rekursionen vorzugehen, ist schrittweise Ersetzung von Teilausdrücken durch ihre jeweiligen weiteren rekursiven Aufrufe. Ich mach das mal für den Anfang vor und dann kannst du das bis zu Ende weiterführen:
    Code (Text):
    f(11, 8)                         // <- else, da weder 7 == 1 noch 7 == 9
      = f(1, f(9, 9) + 2)            // <- (x == y), da (9 == 9)
      = f(1, f(7, 9) + 2)            // <- else, da weder 7 == 1 noch 7 == 9
      = f(1, f(1, f(5, 10) + 2) + 2) // <- else, da weder 5 == 1 noch 5 == 10
      = ... hier kommen weitere Ersetzungen durch dich ...
      = 25
    Denke immer daran, den innersten Aufruf von 'f' zu ersetzen. Dabei gehst du so vor, dass du dir die konkreten Argumente anguckst (z.B. am Anfang (11, 8)) und schaust, welcher Fall hier eintritt. Und dann ersetzt du den ursprünglichen f(11, 8) Aufruf/Ausdruck eben durch das, was der eingetretene Fall machen würde. In diesem Fall also f(1, f(9, 9) + 2).
     
    dan1996 und JCODA gefällt das.
  7. Wenn du Java lernen möchtest, empfehlen wir dir diesen Kurs hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Rekursive Methode berechnen - Ähnliche Themen

rekursive Methoden
rekursive Methoden im Forum Java Basics - Anfänger-Themen
Quersumme rekursive Methode
Quersumme rekursive Methode im Forum Java Basics - Anfänger-Themen
Rekursive Methode
Rekursive Methode im Forum Allgemeine Java-Themen
Rekursive Methode Programmieren
Rekursive Methode Programmieren im Forum Java Basics - Anfänger-Themen
rekursive Methode
rekursive Methode im Forum Java Basics - Anfänger-Themen
Thema: Rekursive Methode berechnen