W tym programie nauczysz się wyświetlać serie Fibonacciego w Kotlinie za pomocą pętli for i while. Nauczysz się wyświetlać serię aż do określonego terminu lub liczby.
Szereg Fibonacciego to szereg, w którym następny człon jest sumą dwóch poprzednich wyrazów. Pierwsze dwa wyrazy ciągu Fibonacciego to 0, po którym następuje 1.
Ciąg Fibonacciego: 0, 1, 1, 2, 3, 5, 8, 13, 21,…
Przykład 1: Wyświetl szereg Fibonacciego za pomocą pętli for
fun main(args: Array) ( val n = 10 var t1 = 0 var t2 = 1 print("First $n terms: ") for (i in 1… n) ( print("$t1 + ") val sum = t1 + t2 t1 = t2 t2 = sum ) )
Po uruchomieniu programu wynik będzie następujący:
Pierwsze 10 terminów: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +
W powyższym programie pierwsze (t1) i drugie (t2) wyrazy są inicjalizowane odpowiednio na pierwsze dwa wyrazy szeregu Fibonacciego 0 i 1.
W przeciwieństwie do Javy, użyliśmy zakresów i operatora in do iteracji do n (liczby terminów) wyświetlającej sumę dwóch poprzednich terminów przechowywanych w zmiennej t1.
Oto odpowiednik kodu Java: Program Java do wyświetlania serii Fibonacciego.
Możesz również generować serie Fibonacciego za pomocą pętli while w Kotlinie.
Przykład 2: Wyświetl serie Fibonacciego za pomocą pętli while
fun main(args: Array) ( var i = 1 val n = 10 var t1 = 0 var t2 = 1 print("First $n terms: ") while (i <= n) ( print("$t1 + ") val sum = t1 + t2 t1 = t2 t2 = sum i++ ) )
Dane wyjściowe są takie same jak w powyższym programie.
W powyższym programie, w przeciwieństwie do pętli for, musimy zwiększyć wartość i wewnątrz ciała pętli.
Chociaż oba programy są technicznie poprawne, w takim przypadku lepiej jest użyć pętli for. Dzieje się tak, ponieważ znana jest liczba iteracji (od 1 do n).
Przykład 3: Wyświetl szereg Fibonacciego do podanej liczby (zamiast terminów)
fun main(args: Array) ( val n = 100 var t1 = 0 var t2 = 1 print("Upto $n: ") while (t1 <= n) ( print("$t1 + ") val sum = t1 + t2 t1 = t2 t2 = sum ) )
Po uruchomieniu programu wynik będzie następujący:
Do 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +
Zamiast wyświetlać serię do określonej liczby, program ten wyświetla ją do podanej liczby (100).
W tym celu wystarczy porównać sumę dwóch ostatnich liczb (t1) z n.
Jeśli t1 jest mniejsze lub równe n, wypisz t1. W przeciwnym razie zakończyliśmy wyświetlanie wszystkich terminów.