Tässä ohjelmassa opit näyttämään fibonacci-sarjat Kotlinissa silmukoiden avulla ja samalla. Opit näyttämään sarjan tiettyyn termiin tai numeroon asti.
Fibonacci-sarja on sarja, jossa seuraava termi on kahden peräkkäisen termin summa. Fibonacci-sekvenssin kaksi ensimmäistä termiä on 0, jota seuraa 1.
Fibonacci-sekvenssi: 0, 1, 1, 2, 3, 5, 8, 13, 21,…
Esimerkki 1: Näytä Fibonacci-sarja silmukkaa varten
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 ) )
Kun suoritat ohjelmaa, tulos on:
Ensimmäiset 10 termiä: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +
Yllä olevassa ohjelmassa ensimmäinen (t1) ja toinen (t2) termi alustetaan Fibonacci-sarjan ensimmäisiin kahteen termiin 0 ja 1.
Toisin kuin Java, olemme käyttäneet alueita ja operaattorissa iteroimalla arvoon n (termien lukumäärä), joka näyttää muuttujalle t1 tallennettujen kahden edellisen termin summan.
Tässä on vastaava Java-koodi: Java-ohjelma Fibonacci-sarjan näyttämiseen.
Voit myös luoda fibonacci-sarjoja käyttämällä while-silmukkaa Kotlinissa.
Esimerkki 2: Näytä Fibonacci-sarja käyttäen while-silmukkaa
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++ ) )
Lähtö on sama kuin yllä oleva ohjelma.
Yllä olevassa ohjelmassa, toisin kuin for -silmukalle, meidän on kasvatettava i: n arvoa silmukan rungossa.
Vaikka molemmat ohjelmat ovat teknisesti oikein, on parempi käyttää silmukkaa tässä tapauksessa. Se johtuu siitä, että iteroinnin määrä (1: stä n: ään) tiedetään.
Esimerkki 3: Näytä Fibonacci-sarjat annettuun numeroon (termien sijaan)
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 ) )
Kun suoritat ohjelmaa, tulos on:
Jopa 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +
Sen sijaan, että sarja näytetään tiettyyn numeroon asti, tämä ohjelma näyttää sen tiettyyn numeroon (100) saakka.
Tätä varten meidän on vain verrattava kahden viimeisen luvun (t1) summaa n: ään.
Jos t1 on pienempi tai yhtä suuri kuin n, tulosta t1. Muuten, kaikki ehdot on näytetty.