C/Java - Fibonacci-Folge

In diesem C- und Java-Tutorial lernen Sie, wie Sie die ersten N Fibonacci-Zahlen zählen und anzeigen.

Die Fibonacci-Folge wird definiert durch:

    n ≥ 1  wie   U1=U2=1
    and
    Un = A-1+Un-2   für alles  n ≥ 2


C/Java - Fibonacci-Reihen-Fraktal
Fibonacci-Wort fraktal

1- Fibonacci in C

Das folgende Programm gibt die ersten 20 Zahlen der Fibonacci-Folge mit der iterativen Methode aus. Jeweils  term wird gebildet, indem die beiden vorherigen Terme in der Sequenz addiert werden. Beginnend mit den Begriffen 1 und 1.
#include< stdio.h> 
#include< stdlib.h>

main() {
int n1 = 1, n2 = 1, n3;
printf("%d %d ", n1 ,n2 );

for (int i = 0; i < 18; i++) { //Schleife für die nächsten 18 Terme
n3= n2 + n1; //Der nächste Term ist die Summe der beiden vorherigen
printf("%d ", n3);
n1 = n2; Erstes vorheriges wird zum 2. vorherigen
n2 = n3; Und die aktuelle Nummer wird zur vorherigen
}
printf("\n");
system("Pause");
}
Ausgabe:

C++ - die ersten 20 Zahlen der Fibonacci-Folge mit der iterativen Methode

2- Fibonacci in Java:


Wir haben uns für eine rekursive Behandlung entschieden, als Eingabe eine ganze Zahl n und als Ausgabe den Term des Ranges n der Sequenz. Hier sind die beiden Fälle von Rekursion:
  • Wenn n kleiner oder gleich 1 ist, nimmt n zwei Werte 0 oder 1 an. fib(0)=0 und fib(1)=1.
  • Andernfalls beginnt die Wiederholung bei n, was zum zweiten Begriff abnimmt.
import java.io.InputStreamReader; 
import java.util.Scanner;

/*
* Zählen und zeigen Sie die ersten N Fibonacci-Zahlen an.
*/
public class Fibonacci {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
int N = sc.nextInt();

//Zeige die erste N-Fibonacci-Zahl an
for(int i = 1 ; i <= N ; i++)//start from n=1
System.out.println(i + ": " + fib(i));
}

private static int fib(int n) {
if (n <= 1) return n;
else return fib(n-1) + fib(n-2);
}
}
Ausgabe:
20
fib(1)= : 1
fib(2)= : 1
fib(3)= : 2
fib(4)= : 3
fib(5)= : 5
fib(6)= : 8
fib(7)= : 13
fib(8)= : 21
fib(9)= : 34
fib(10)= : 55
fib(11)= : 89
fib(12)= : 144
fib(13)= : 233
fib(14)= : 377
fib(15)= : 610
fib(16)= : 987
fib(17)= : 1597
fib(18)= : 2584
fib(19)= : 4181
fib(20)=: 6765