Fibonacci sorozat be Java Recursion and Loops program segítségével
Miben található a Fibonacci sorozat? Java?
A Fibonacci sorozat in Java olyan számsor, amelyben a következő szám az előző két szám összege. A Fibonacci-sorozat első két száma a 0 és az 1. A Fibonacci-számokat jelentős mértékben használják egy algoritmus számítási futásidejű vizsgálata során két egész szám legnagyobb közös osztójának meghatározására.
Az aritmetikában a Wythoff-tömb egy végtelen számmátrix, amely a Fibonacci-sorozat eredménye.
The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...
Fibonacci sorozat programja Java a For Loop használatával
//Using For Loop public class FibonacciExample { public static void main(String[] args) { // Set it to the number of elements you want in the Fibonacci Series int maxNumber = 10; int previousNumber = 0; int nextNumber = 1; System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); for (int i = 1; i <= maxNumber; ++i) { System.out.print(previousNumber+" "); /* On each iteration, we are assigning second number * to the first number and assigning the sum of last two * numbers to the second number */ int sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; } } }
output:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Program logika:
- A previousNumber 0-ra, a nextNumber pedig 1-re inicializálódik
- A Fibonacci For Loop ismétlődik
maxNumber
- Az előző szám megjelenítése
- Kiszámítja a previousNumber és a nextNumber összegét
- Frissíti a previousNumber és a nextNumber új értékeit
Fibonacci sorozat programja Java a While Loop használatával
Ön is generálhat Java Fibonacci sorozat segítségével a While
hurok be Java
//Using While Loop public class FibonacciWhileExample { public static void main(String[] args) { int maxNumber = 10, previousNumber = 0, nextNumber = 1; System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); int i=1; while(i <= maxNumber) { System.out.print(previousNumber+" "); int sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; i++; } } }
output:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Az egyetlen különbség a program logikájában a használata WHILE Loop kinyomtatni Fibonaccit Numbers
Fibonacci sorozat a felhasználói bevitel alapján
//fibonacci series based on the user input import java.util.Scanner; public class FibonacciExample { public static void main(String[] args) { int maxNumber = 0; int previousNumber = 0; int nextNumber = 1; System.out.println("How many numbers you want in Fibonacci:"); Scanner scanner = new Scanner(System.in); maxNumber = scanner.nextInt(); System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); for (int i = 1; i <= maxNumber; ++i) { System.out.print(previousNumber+" "); /* On each iteration, we are assigning second number * to the first number and assigning the sum of last two * numbers to the second number */ int sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; } } }
Program logika:
A logika ugyanaz, mint korábban. A megjelenítendő elemek számának hardkódolása helyett Java Fibonacci sorozat, a felhasználót felkérik, hogy írjon számot.
Fibonacci sorozat a rekurzió használatával Java
Az alábbiakban egy Fibonacci sorozat programja látható Java rekurzió használatával:
//Using Recursion public class FibonacciCalc{ public static int fibonacciRecursion(int n){ if(n == 0){ return 0; } if(n == 1 || n == 2){ return 1; } return fibonacciRecursion(n-2) + fibonacciRecursion(n-1); } public static void main(String args[]) { int maxNumber = 10; System.out.print("Fibonacci Series of "+maxNumber+" numbers: "); for(int i = 0; i < maxNumber; i++){ System.out.print(fibonacciRecursion(i) +" "); } } }
output:
Fibonacci Series of 10 numbers: 0 1 1 2 3 5 8 13 21 34
Program logika:
A rekurzív függvény az, amely képes meghívni önmagát.
fibonacciRecursion():
- A Java A Fibonacci rekurziós függvény egy bemeneti számot vesz fel. Ellenőrzi a 0, 1, 2 értékeket, és ennek megfelelően 0, 1, 1-et ad vissza, mert a Fibonacci sorozat Java 0, 1, 1-gyel kezdődik.
- Ha az n bemenet >=3, a függvény rekurzívan hívja meg magát. A hívás kétszer történik. Lássuk a Fibonacci sorozatot Java rekurziós példával a 4 bevitelére.
fibonacciRecursion (4) It will recursively call fibonacciRecursion function for values 2 and 3 fibonacciRecursion (2) \\ call for value 0 and 1 fibonacciRecursion (0) = 0 fibonacciRecursion (1) = 1 fibonacciRecursion (3) \\ It will call for 1 and 2 fibonacciRecursion (1) = 1 fibonacciRecursion (2) \\ It will call for 0 and 1 fibonacciRecursion (0) = 0 fibonacciRecursion (1) = 1
Most az eredmény hozzáadódik 0+1+1+0+1=3