Програма Java для відображення серії Фібоначчі

У цій програмі ви навчитеся відображати серії Фібоначчі на Java за допомогою циклів for і while. Ви навчитеся відображати серію до певного терміну або числа.

Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування Java:

  • Java для циклу
  • Java в той час як і робити … в той час як Loop

Ряд Фібоначчі - це ряд, де наступний доданок - це сума попередніх двох доданків. Перші два члени послідовності Фібоначчі дорівнюють 0, а потім 1.

 Послідовність Фібоначчі: 0, 1, 1, 2, 3, 5, 8, 13, 21,… 

Приклад 1: Відображення серії Фібоначчі за допомогою циклу 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; ) ) )

Вихідні дані

 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 

У наведеній вище програмі перший (t1) та другий (t2) терміни ініціалізуються до перших двох членів рядів Фібоначчі 0 та 1 відповідно.

Потім для циклу ітерація до n (кількість термінів) відображає суму попередніх двох термінів, що зберігаються у змінній t1.

Ви також можете генерувати серії Фібоначчі, використовуючи цикл while в Java.

Приклад 2: Відображення рядів Фібоначчі за допомогою циклу 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++; ) ) )

Результат роботи такий самий, як і у вищезазначеної програми.

У наведеній вище програмі, на відміну від циклу for, ми повинні збільшити значення i всередині тіла циклу.

Хоча обидві програми технічно правильні, в цьому випадку краще використовувати цикл for. Це тому, що відома кількість ітерацій (від 1 до n).

Приклад 3: Відображення рядів Фібоначчі до заданого числа (замість термінів)

 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; ) ) )

Вихідні дані

 До 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 + 

Замість відображення серії до певного числа, ця програма відображає її до заданого числа (100).

Для цього нам просто потрібно порівняти суму двох останніх чисел (t1) з n.

Якщо t1 менше або дорівнює n, роздрукуйте t1. В іншому випадку ми закінчили відображення всіх термінів.

Цікаві статті...