V tomto programe sa naučíte zobrazovať fibonacciho rady v Jave pomocou slučiek for a while. Naučíte sa zobrazovať sériu až po konkrétny výraz alebo číslo.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Java:
- Java pre slučku
- Java zatiaľ čo a robiť … zatiaľ čo Loop
Fibonacciho séria je séria, kde nasledujúci výraz je súčtom predchádzajúcich dvoch výrazov. Prvé dva členy Fibonacciho sekvencie sú 0 a za nimi 1.
Fibonacciho postupnosť: 0, 1, 1, 2, 3, 5, 8, 13, 21,…
Príklad 1: Zobrazte sériu Fibonacci pomocou cyklu for
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; ) ) )
Výkon
0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +
Vo vyššie uvedenom programe sa prvý (t1) a druhý (t2) výraz inicializujú na prvé dva členy Fibonacciho série 0, respektíve 1.
Potom pre cyklus iteruje na n (počet výrazov), ktorý zobrazuje súčet predchádzajúcich dvoch výrazov uložených v premennej t1.
Sériu Fibonacci môžete tiež generovať pomocou while cyklu v Jave.
Príklad 2: Zobrazte sériu Fibonacci pomocou cyklu while
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++; ) ) )
Výstup je rovnaký ako vyššie uvedený program.
Vo vyššie uvedenom programe musíme na rozdiel od cyklu for zvýšiť hodnotu i vo vnútri tela slučky.
Aj keď sú oba programy technicky správne, v tomto prípade je lepšie použiť loop. Je to preto, lebo je známy počet iterácií (od 1 do n).
Príklad 3: Zobrazte sériu Fibonacci až po dané číslo (namiesto výrazov)
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; ) ) )
Výkon
Až 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +
Namiesto zobrazenia série až po konkrétne číslo ho tento program zobrazuje až do určitého čísla (100).
Na tento účel stačí porovnať súčet posledných dvoch čísel (t1) s n.
Ak je t1 menšie alebo sa rovná n, vytlačte t1. Inak sme dokončili zobrazovanie všetkých výrazov.