使用斐波那契数列计算黄金比例

Calculate the Golden Ratio by using Fibonacci Numbers

第 n 个斐波那契数

有一个 Swift 代码
func fibonacci( n: Int) -> Int {
if n == 0 || n == 1 { return n; }

else { return fibonacci(n: n - 1) + fibonacci(n: n - 2) }
}
print(fibonacci(n: 10))

我想用斐波那契数列计算黄金分割率

如何为 n=2 到 n=10

列出 F(n+1) / F(n)

我试过这样的事情:

func fibonacci( n: Int) -> Float {
if n == 0 || n == 1 { return n; }

else { return fibonacci(n: n - 1) + fibonacci(n: n - 2) }
}


func phi( k: Int) -> Float {

Phi = fibonacci(n: k)/fibonacci(n: k)
}


print(Phi(n: 10))

你可以使用数组。

func fibonacci(n: Int) -> Float {
if n == 0 || n == 1 
    { return 1.0; }
else { 
       return fibonacci(n: n - 1) + fibonacci(n: n - 2)
   }
}

var goldenRateArr = [Float]()

func phi(k: Int){

goldenRateArr.append( (fibonacci(n: k+1)/fibonacci(n: k)))

if (k > 2)
   { phi(k:k-1) }

}

phi(k:10)
print(goldenRateArr)

你的输出将是:

[1.6179775, 1.61818182, 1.61764705, 1.61904764, 1.61538458, 1.625, 
1.60000002, 1.66666663, 1.5]