Java-programma om de Fibonacci-serie weer te geven

In dit programma leer je fibonacci-reeksen in Java weer te geven met for en while-loops. Je leert om de reeks weer te geven tot een bepaalde term of een getal.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:

  • Java voor Loop
  • Java while en do … while Loop

De Fibonacci-reeks is een reeks waarbij de volgende term de som is van de vorige twee termen. De eerste twee termen van de Fibonacci-reeks zijn 0 gevolgd door 1.

 De Fibonacci-reeks: 0, 1, 1, 2, 3, 5, 8, 13, 21, … 

Voorbeeld 1: Fibonacci-reeks weergeven met for-lus

 public class Fibonacci ( public static void main(String() args) ( int n = 10, t1 = 0, t2 = 1; System.out.print("First " + n + " terms: "); for (int i = 1; i <= n; ++i) ( System.out.print(t1 + " + "); int sum = t1 + t2; t1 = t2; t2 = sum; ) ) )

Uitvoer

 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 

In het bovenstaande programma worden de eerste (t1) en tweede (t2) termen geïnitialiseerd op de eerste twee termen van respectievelijk de Fibonacci-reeks 0 en 1.

Vervolgens itereert de for-lus naar n (aantal termen) en toont de som van de vorige twee termen die zijn opgeslagen in variabele t1.

U kunt ook Fibonacci-reeksen genereren met een while-lus in Java.

Voorbeeld 2: geef de Fibonacci-reeks weer met de while-lus

 public class Fibonacci ( public static void main(String() args) ( int i = 1, n = 10, t1 = 0, t2 = 1; System.out.print("First " + n + " terms: "); while (i <= n) ( System.out.print(t1 + " + "); int sum = t1 + t2; t1 = t2; t2 = sum; i++; ) ) )

De output is hetzelfde als het bovenstaande programma.

In het bovenstaande programma moeten we, in tegenstelling tot een for-lus, de waarde van i binnen de body van de lus verhogen.

Hoewel beide programma's technisch correct zijn, is het in dit geval beter om for loop te gebruiken. Het is omdat het aantal iteraties (van 1 tot n) bekend is.

Voorbeeld 3: Fibonacci-reeks weergeven tot een bepaald getal (in plaats van termen)

 public class Fibonacci ( public static void main(String() args) ( int n = 100, t1 = 0, t2 = 1; System.out.print("Upto " + n + ": "); while (t1 <= n) ( System.out.print(t1 + " + "); int sum = t1 + t2; t1 = t2; t2 = sum; ) ) )

Uitvoer

 Tot 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 + 

In plaats van de reeks tot een bepaald nummer weer te geven, geeft dit programma deze weer tot een bepaald nummer (100).

Hiervoor hoeven we alleen de som van de laatste twee getallen (t1) te vergelijken met n.

Als t1 kleiner is dan of gelijk is aan n, print dan t1. Anders zijn we klaar met het weergeven van alle termen.

Interessante artikelen...