Bevezetés a Fibonacci sorozatba
A Fibonacci sorozat abban a folyamatban rejlik, hogy mindegyik szám két előző érték összegét képezi, és a sorozat mindig a 0 és 1 alaprészekkel kezdődik. A Fibonacci számok izmosan kapcsolódnak az aranyarányhoz. Ebben a témában a Fibonacci sorozatot tanuljuk meg Java-ban.
Képlet: an = an - 2 + an - 1
Fibonacci sorozat az első 21 számhoz | ||||||||||||||||||||
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 |
Fő alkalmazások
Az alábbiakban bemutatjuk a Fibonacci sorozat legfontosabb alkalmazásokat a Java-ban
- Mérföldek kilométerre és kilométerek mérföldekre való átszámítása.
- Az agilis módszertan néhány példája
- Euclid algoritmusának futási ideje elemzésének kiszámítását ezen sorozat technikával végezzük.
- A fibonacci statisztikákat matematikailag viselik néhány ál-véletlenszám-generátor.
- A póker tervezési folyamat magában foglalja ennek a technikának a használatát
- A Fibonacci-halom adatszerkezet-technikáját a Fibonacci-sorozat módszerével érjük el.
- Az optikában, míg a fény tengelye kétféle felhalmozott áttetsző lemez eltérő törésmutatójú elemeinek elejétől a végéig világít, három felületről tér vissza: a két lemez csúcsának, középső és alapfelületének. . A k> 1 kreflektúrájú eltérő sugárút számja a (\ megjelenítési stílus k) Fibonacci szám.
Fibonacci sorozat program (nem-rekurzív program)
// 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;
)
)
)
Kimenet :
Magyarázat: Ez a program kiszámítja a Fibonacci sorozatot egy adott számtartományra. itt ezt a folyamatot rekurzív technika alkalmazásával valósítják meg. A program algoritmusát soronként rajzolják,
Program algoritmus
- A gyökér osztályú Fibonacci-t deklarálják azzal a szükségességgel, hogy az ebbe az osztályba beágyazott összes programkód a Fibonacci számsorozat elérésének funkcionalitására irányul.
- A gyökérosztályon belül a fő módszer deklarálásra kerül. A fő módszer általában egy jelentős Java módszer. a JVM végrehajtása nem történik meg a fő módszer jelenléte nélkül a programban. a fő módszer különféle alkotóelemeinek magyarázata az alábbiakban található,
- Ezután a változó inicializálási szakaszát vonjuk be. Ez a szakasz három különböző változó inicializálását foglalja magában. Közülük kettő a Fibonacci logika egy változó szintű értékcsere révén történő elérésére szolgál, egy másik változó pedig az olyan értékek számának szabályozására szolgál, amelyekhez a Fibonacci logikát létre kell hozni.
- A Fibonacci sorozat program kulcslogikáját az alábbiakban a hurokhoz megadott módon használjuk a program részben.
for (int i = 1; i <= count; ++i)
(
System.out.print(var1 + " + ");
int added_sum= var1 + var2;
var1 = var2;
var2 = added_sum;
)
- A hurokszakasz mögött meghúzódó logika az alábbiak szerint alakul: kezdetben egy értéktartományt hajtanak végre egy hurokon, a hurok a sorozatérték növekményével történik minden zajló áramlás esetén. Ezenkívül minden egyes folyamatban a két csereváltozó értékét egy harmadik változóra összegzik.
- Összegzés után a második változó értékét belefoglalják az első változóba, tehát az első változó értékét el kell távolítani ebből a folyamatból. A következő lépésben az összegzett értéket hozzárendeljük a második változóhoz.
Tehát a példány végén egyetlen logikai folyamathoz az alábbi eseményeket alkalmazzuk,
1. Az első változó értékét kiürítjük.
2. A meglévő második változó értékét kitölti az első változó.
3. Az összegzett értéket behelyezzük a második változóba.
Az alábbiakban ismertetett logikai szekvencia végrehajtásával a szükséges értékek számához a Fibonacci sorozat érhető el.
Fibonacci sorozat program (tömbök használatával)
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));
)
)
Kimenet :
Magyarázat: A fent leírt programlogika betartásával, de ebben az esetben a Fibonacci bemeneteket tömbök részeként tárolják. Tehát az összes fent említett művelet tömbre vonatkozik.
Fibonacci sorozat Program (hurkok utalása nélkül)
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);
)
)
Kimenet :
Magyarázat: A fent leírt programlogika betartásával, de ebben az esetben a Fibonacci bemeneteket rekurzívan kezeltük a Fibonacci nevű függvény felhasználásával.
Fibonacci sorozat Program (Bármilyen hurkot nem vet fel, de csak feltételekkel érhető el)
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);
)
)
Kimenet :
Magyarázat: A fent leírt programlogika alapján, de ebben az esetben a Fibonacci bemeneteket csak a szükséges feltételes utasításokkal szabályozzuk. A feltételeknek megfelelően a változók cseréjét szükségszerűen kell elvégezni.
Fibonacci sorozat Program (hurkok nélkül a hurkolás koncepcióját Nextint módszerrel érjük el)
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);
)
)
)
Kimenet :
Magyarázat: A fentiekben felvázolt programlogikára utalva, de ebben az esetben a Fibonacci bemeneteket rekurzívan kezeltük a num elnevezésű függvény felhasználásával, és a hurkot a NextInt függvénnyel hajtottuk végre.
Következtetés - Fibonacci sorozat Java-ban
Ezeknek a programoknak az a célja, hogy elérjék a Fibonacci sorozatot egy adott egész értékre. A példák megadott listájába egy nagyrészt besorolt technikákat sorolunk be. Az olyan technikák, mint egy tömborientált megközelítés és egyedül a feltételes megközelítés, nagyon sajátosak.
Ajánlott cikkek
Ez egy útmutató a Fibonacci sorozathoz Java-ban. Itt a Fibonacci sorozatot és a példák megadott listáján szereplő technikák egy sorát tárgyaljuk. A következő cikkben további információkat is megnézhet -
- Fibonacci sorozat, C
- 3D tömbök Java-ban
- Java kommentárok
- StringBuffer Java-ban
- Java telepítési eszközök
- 3D tömbök C ++ formátumban
- Véletlenszám-generátor a Matlab-ban
- Véletlenszám-generátor C # -ben
- Véletlenszám-generátor a JavaScript-ben