Im folgenden Beispiel wird eine rekursiv definierte Folge ganzer Zahlen ausgegeben:
Berechnen wir die ersten Werte, so erhalten wir , , , usf. Das folgende Programm gibt alle Folgenglieder bis zu dem in der Kommandozeile angegebenen Index aus:
public class Rekursion { static int funktion(int n) { if (n==1) return 3; else return funktion(n-1) + 2; } public static void main (String [] args) { int maxzahl = Integer.parseInt(args[0]); for (int i=1; i<=maxzahl; i++) { System.out.println(i + ": " + funktion(i)); } } }
Beim Programmlauf erhalten wir:
alfred@duron:~/java/themen> java Rekursion 5 1: 3 2: 5 3: 7 4: 9 5: 11
Es ist klar, dass diese Folge auch iterativ berechnet hätte werden können - es liegt eine einfache arithmetische Folge mit und vor.