Inleiding tot de Fibonacci-serie

Fibonacci-serie ligt in het proces dat elk nummer fungeert als een som van twee voorgaande waarden en de reeks begint altijd met de gehele getallen 0 en 1. Fibonacci-getallen zijn gespierd gerelateerd aan de gulden snede. In dit onderwerp gaan we meer te weten komen over de Fibonacci-serie in Java.

Formule: an = an - 2 + an - 1

Fibonacci-serie voor de eerste 21 nummers
F 0 F 1 F 2 F 3 F 4 F 5 F 6 F 7 F 8 F 9 F 10 F 11 F 12 F 13 F 14 F 15 F 16 F 17 F 18 F 19 F 20
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765

Belangrijkste applicaties

Hier zijn de belangrijkste toepassingen van de Fibonacci-serie in Java die hieronder worden gegeven

  • Miles naar kilometer en kilometer naar mijl conversie.
  • Enkele voorbeelden van Agile-methodologie
  • Euclid's algoritme runtime analyse berekening wordt uitgevoerd met behulp van deze serie techniek.
  • Fibonacci-statistieken worden wiskundig gedragen door sommige generators van pseudorandom-getallen.
  • Het pokerplanningsproces omvat het gebruik van deze techniek
  • De datastructuurtechniek van de Fibonacci-heap wordt bereikt met behulp van de Fibonacci-serietechniek.
  • In optica, terwijl een lichtschacht glanst in een gezichtspunt van begin tot einde van twee opgestapelde doorschijnende platen van ongelijksoortige materialen van ongelijksoortige brekingsindices, kan deze van drie oppervlakken terugkeren: het toppunt, het midden en de basisoppervlakken van de twee platen . Het cijfer van een ongelijk straalpad om kreflecties te hebben, voor k> 1, is de (\ weergavestijl k) het Fibonacci-nummer.

Fibonacci Series-programma (niet-recursief programma)

// Fibonacci series program
public class Fibonacci (
// main program
public static void main(String() args) (
int count = 10, var1 = 0, var2 = 1;
System.out.print("First " + count + " terms: ");
// Fibonacci series formation loop
for (int i = 1; i <= count; ++i)
(
System.out.print(var1 + " + ");
int added_sum= var1 + var2;
var1 = var2;
var2 = added_sum;
)
)
)

Uitgang:

Verklaring: Dit programma berekent de Fibonacci-serie voor een bepaald bereik van getallen. hier wordt dit proces bereikt zonder recursieve techniek. Het programma-algoritme wordt hieronder regel voor regel opgesteld,

Programma-algoritme

  • Een root-klasse Fibonacci wordt verklaard met de noodzaak dat alle programmacodes die in deze klasse zijn ingebed de functionaliteit van het behalen van een Fibonacci-reeks getallen behandelen.
  • Binnen de root-klasse wordt de belangrijkste methode aangegeven. De hoofdmethode fungeert in de regel als een significante Java-methode. de JVM-uitvoering zal niet plaatsvinden zonder de aanwezigheid van de hoofdmethode in het programma. de uitleg van verschillende subcomponenten van de hoofdmethode wordt hieronder weergegeven,
  • Vervolgens wordt de sectie voor initialisatie van variabele geïmpliceerd. deze sectie omvat de initialisatie van drie verschillende variabelen. Twee daarvan zijn voor het bereiken van de Fibonacci-logica door middel van een variabel niveau waardewisseling en een andere variabele wordt toegepast voor het regelen van het aantal waarden waarvoor de Fibonacci-logica moet worden gegenereerd.
  • De belangrijkste logica voor het Fibonacci-serieprogramma wordt bereikt met behulp van het onderstaande gegeven voor lus in de programmasectie.

for (int i = 1; i <= count; ++i)
(
System.out.print(var1 + " + ");
int added_sum= var1 + var2;
var1 = var2;
var2 = added_sum;
)

  • De logica achter dit voor lussectie is als volgt, aanvankelijk wordt een bereik van waarden uitgevoerd op een lus, de lus gebeurt met een toename van de bereikwaarde voor elke stroming die plaatsvindt. Bovendien wordt in elke stroom de waarde van de twee swapvariabelen samengevat in een derde variabele.
  • Na het samenvatten wordt de tweede variabele waarde geïmpliceerd in de eerste variabele zodat dit de eerste variabele waarde wegspoelt uit dit proces. Bij de volgende stap wordt de opgetelde waarde toegewezen aan de tweede variabele.

Dus aan het einde van deze instantie voor een enkele logische stroom, worden de onderstaande gebeurtenissen toegepast,

1. De waarde van de eerste variabele wordt weggespoeld.

2. De bestaande tweede variabele waarde wordt ingevuld in de eerste variabele.

3. De samengevatte waarde wordt naar de tweede variabele verplaatst.

Tijdens het uitvoeren van de onderstaande logische volgorde voor de gegeven telling van waarden de behoefte, kan de Fibonacci-serie worden bereikt.

Fibonacci-serie-programma (arrays gebruiken)

import java.util.Arrays;
public class Main (
public static void main(String() args) (
int Count = 15;
long() array = new long(Count);
array(0) = 0;
array(1) = 1;
for (int x = 2; x < Count; x++) (
array(x) = array(x - 1) + array(x - 2);
)
System.out.print(Arrays.toString(array));
)
)

Uitgang:

Verklaring: Dit impliceert de programmalogica die hierboven is opgesteld, maar in dit geval worden de Fibonacci-ingangen opgeslagen als onderdeel van arrays. Alle hierboven genoemde bewerkingen worden dus uitgevoerd met betrekking tot een array.

Fibonacci-serie-programma (zonder lussen te impliceren)

public class Fibonaccifunction
(
private static int indexvalue = 0;
private static int endPoint = 9;
public static void main (String() args)
(
int number1 = 0;
int number2 = 1;
fibonaccifunction(number1, number2);
)
public static void fibonaccifunction(int number1, int number2)
(
System.out.println("index value : " + indexvalue + " -> " + number1);
if (indexvalue == endPoint)
return;
indexvalue++;
fibonaccifunction(number2, number1+number2);
)
)

Uitgang:

Verklaring: Dit impliceert de programmalogica die hierboven is opgesteld, maar in dit geval werden de Fibonacci-ingangen recursief behandeld met een functie met de naam Fibonacci.

Fibonacci-serie-programma (zonder enige lussen te impliceren maar alleen met gebruik van voorwaarden bereikt)

public class Fibonacci_with_conditions
(
static int number2=1;
static int number1=0;
static int next=0;
public static void Fibonacci_conditions( int number)
(
if(number<10)
(
if(number == 0)
(
System.out.print(" "+number);
number++;
Fibonacci_conditions (number);
)
else
if(number == 1)
(
System.out.print(" "+number);
number++;
Fibonacci_conditions(number);
)
else(
next=number1+number2;
System.out.print(" "+next);
number1=number2;
number2=next;
number++;
Fibonacci_conditions(number);
)
)
)
public static void main(String() args)
(
Fibonacci_conditions(0);
)
)

Uitgang:

Verklaring: Dit impliceert de programmalogica die hierboven is opgesteld, maar in dit geval worden de Fibonacci-ingangen alleen gereguleerd door middel van noodzakelijke voorwaardelijke verklaringen. Afhankelijk van de voorwaarden wordt het omwisselen van de variabelen noodzakelijkerwijs uitgevoerd.

Fibonacci-serie-programma (zonder lussen worden de concepten van lussen bereikt met de nextint-methode)

import java.util.*;
public class Fibonacci_series
(
public static void main(String() args)
(
System.out.println("Input:");
int number= 10, value1=1, value2=0, value3=0;
num(number, value1, value2, value3);
)
public static void num(int number, int value1, int value2, int value3)
(
if(value1 <= number)
(
System.out.println(value1);
value3=value2;
value2=value1;
value1=value2+value3;
num(number, value1, value2, value3);
)
)
)

Uitgang:

Verklaring: Implicerend op de programmeerlogica die hierboven is opgesteld, maar in dit geval werden de Fibonacci-ingangen recursief behandeld met een functie met de naam num en de lus uitgevoerd met de nextInt-functie.

Conclusie - Fibonacci-serie in Java

Deze programma's zijn bedoeld om de Fibonacci-serie te bereiken voor een gegeven gehele waarde. Een grotendeels geclassificeerde set technieken wordt geïmpliceerd in de gegeven lijst met voorbeelden. Technieken zoals een array-georiënteerde benadering en een condition-alone benadering zijn heel bijzonder.

Aanbevolen artikelen

Dit is een gids voor Fibonacci-serie in Java. Hier bespreken we de Fibonacci-serie en een reeks technieken die zijn geïmpliceerd in de gegeven lijst met voorbeelden. U kunt ook het volgende artikel bekijken voor meer informatie -

  1. Fibonacci-serie in C
  2. 3D-arrays in Java
  3. Java-annotaties
  4. StringBuffer in Java
  5. Hulpmiddelen voor Java-implementatie
  6. 3D-arrays in C ++
  7. Willekeurige nummergenerator in Matlab
  8. Willekeurige nummergenerator in C #
  9. Willekeurige nummergenerator in JavaScript