Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint

8.7 Rekursionen

Man spricht von einer Rekursion, wenn eine Funktion sich selbst aufruft. Dabei muss allerdings gewährleistet sein, dass die Rekursion irgendwann abbricht. Als Beispiel hierzu die rekursive Variante einer Funktion zur Berechnung der Fakultät einer Zahl.

int fakul(int n)
{
   if (n == 0)
      return 1;
   else
      return n * fakul(n - 1);
}

Lassen Sie uns den Geschehensablauf für den Fall durchspielen, dass der Funktion der Wert 2 übergeben wird, also die Fakultät von 2 berechnet werden soll. Dann erhält der Parameter n der Funktion fakul() diesen Wert und die if-Bedingung

if (2 == 0)

wertet zu false aus. Daher wird die Anweisung des else-Zweiges ausgeführt, in dem die Funktion sich selbst aufruft und zwar mit dem Argument n - 1, in diesem Fall also mit dem Wert 1.


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial