Das n-te Element der Pibonacci-Folge kann durch die Funktion pib(n) so dargestellt werden:
pib(n):=1 falls 0<n<= 3
pib(n):= pib(n-1)+2-pib(n-3), falls 3<n
Also die Folge sieht so aus:
1,1,1,2,3,4,4,3,1,-1,-2,...
Aufgabe ist es eine rekursive Funktion pib(int n) zu implementieren, die das n-te Element der Folge berechnet.
(Für n<= 0 ist die Funktion nicht definiert; wir sollen dann den Wert 0 zurückgeben und eine entsprechende Fehlermeldung ausgeben.)
------
Ich habe das gemacht und wüsste gerne, ob meine Methode bzw. Klasse so gut ist. Kommt mir irgendwie zu einfach vor!
pib(n):=1 falls 0<n<= 3
pib(n):= pib(n-1)+2-pib(n-3), falls 3<n
Also die Folge sieht so aus:
1,1,1,2,3,4,4,3,1,-1,-2,...
Aufgabe ist es eine rekursive Funktion pib(int n) zu implementieren, die das n-te Element der Folge berechnet.
(Für n<= 0 ist die Funktion nicht definiert; wir sollen dann den Wert 0 zurückgeben und eine entsprechende Fehlermeldung ausgeben.)
------
Ich habe das gemacht und wüsste gerne, ob meine Methode bzw. Klasse so gut ist. Kommt mir irgendwie zu einfach vor!
Java:
public class PibonacciRecursive{
public int pib(int n){
if( n<=0){
System.out.println("Function is not defined for n<=0.");
return 0;
}
if( 0<n && n<= 3) return 1;
return pib(n-1)+2-pib(n-3);
}
}
Zuletzt bearbeitet von einem Moderator: