Kotlin 打印顯示斐波那契數(shù)列

Kotlin 實(shí)例大全

在此程序中,您將學(xué)習(xí)使用for和while循環(huán)在Kotlin中顯示斐波那契數(shù)列。您將學(xué)習(xí)如何顯示序列,直到顯示特定術(shù)語或數(shù)字。

斐波那契數(shù)列是一個(gè)系列,其中下一項(xiàng)是前兩個(gè)項(xiàng)的總和。斐波那契數(shù)列的前兩個(gè)項(xiàng)是0,然后是1。

The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...

示例1:使用for循環(huán)顯示斐波那契數(shù)列

fun main(args: Array<String>) {
    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
    }
}

運(yùn)行該程序時(shí),輸出為:

First 10 terms: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +

在上面的程序中,第一項(xiàng)(t1)和第二項(xiàng)(t2)分別初始化為斐波那契數(shù)列0和1的前兩項(xiàng)。

與Java不同,我們使用了range和in運(yùn)算符來迭代直到n(項(xiàng)數(shù))顯示存儲(chǔ)在變量t1中的前兩個(gè)項(xiàng)之和。

以下是等效的Java代碼:顯示斐波那契系列的Java程序。

您還可以在Kotlin中使用while循環(huán)生成斐波那契數(shù)列。

示例2:使用while循環(huán)顯示斐波那契數(shù)列

fun main(args: Array<String>) {
    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++
    }
}

輸出與上述程序相同。

在上面的程序中,與for循環(huán)不同,我們必須增加循環(huán)體內(nèi) i 的值。

盡管兩個(gè)程序在技術(shù)上都是正確的,但在這種情況下最好使用for循環(huán)。這是因?yàn)榈螖?shù)(從1到n)是已知的。

示例3:顯示最多給定數(shù)字(而不是項(xiàng))的斐波那契數(shù)列

fun main(args: Array<String>) {
    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
    }
}

運(yùn)行該程序時(shí),輸出為:

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

該程序?qū)⑿蛄酗@示到給定的數(shù)字(100),而不是顯示序列直至指定的數(shù)字。

為此,我們只需要比較最后兩個(gè)數(shù)字(t1)和n。

如果t1小于等于n,輸出t1。否則,我們就完成了所有術(shù)語的顯示。

Kotlin 實(shí)例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清