Fakultät in Java programmieren

Die Fakultät einer Zahl n ist das Produkt aller Zahlen von 1 bis n. Zum Beispiel ist die Fakultät von 5:

1 * 2 * 3 * 4 * 5 = 120

Rekursiv gesehen ist die Fakultät einer Zahl n:

n! = n * (n-1)!

Man sollte dafür allerdings wissen, dass 0! = 1 ist.
Eine rekursive Programmierung könnte so aussehen:
public static long Fakultaet(int n){   if (n == 0){     return 1;   }   return n * Fakultaet(n - 1); }
Da rekursive Programmierungen zwar recht einfach sind, heißt es nicht, dass sie die bessere Möglichkeit sind, denn sie sind sehr speicherintensiv und brauchen meistens auch länger.
Darum zeigen wir euch auch eine iterative Programmierung:
public static long Fakultaet(int n){   long erg = 1;   while(n < 1){     erg *= n;   }   return erg; }
Wir haben die Zeit für die beiden Methoden gestoppt und verglichen: Die iterative Implementierung war deutlich schneller, als die rekursive.

28.11.2013