Ebben a programban megtanulja megjeleníteni a fibonacci sorozatokat Java-ban a loop közben és közben. Megtanulja megjeleníteni a sorozatokat egy adott kifejezésig vagy számig.
A példa megértéséhez ismernie kell a következő Java programozási témákat:
- Java a hurokhoz
- Java közben és csináld … míg a hurok
A Fibonacci sorozat olyan sorozat, ahol a következő kifejezés az előző két kifejezés összege. A Fibonacci-szekvencia első két tagját 0 követi, majd 1.
A Fibonacci-szekvencia: 0, 1, 1, 2, 3, 5, 8, 13, 21,…
1. példa: A Fibonacci sorozat megjelenítése a hurok használatával
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; ) ) )
Kimenet
0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +
A fenti programban az első (t1) és a második (t2) tagot inicializáljuk a Fibonacci 0. és 1. sorozat első két tagjára.
Ezután a hurok iterációig n-ig (kifejezések száma) jeleníti meg a t1 változóban tárolt előző két kifejezés összegét.
Fibonacci sorozatokat is előállíthat egy Java ciklus segítségével.
2. példa: A Fibonacci sorozat megjelenítése a loop használatával
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++; ) ) )
A kimenet megegyezik a fenti programmal.
A fenti programban, a for ciklussal ellentétben, meg kell növelnünk az i értékét a hurok testén belül.
Noha mindkét program technikailag helyes, ebben az esetben jobb a loop használatát használni. Azért, mert az iteráció száma (1-től n-ig) ismert.
3. példa: A Fibonacci sorozat megjelenítése egy megadott számig (kifejezések helyett)
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; ) ) )
Kimenet
100-ig: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +
Ahelyett, hogy a sorozatokat egy adott számig jelenítené meg, ez a program egy adott számig (100) jeleníti meg.
Ehhez csak össze kell hasonlítanunk az utolsó két szám (t1) összegét n-vel.
Ha t1 kisebb vagy egyenlő, mint n, nyomtassa ki a t1 értéket. Egyébként befejeztük az összes kifejezés megjelenítését.