有一个第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))
我想用Fibonacci数字来计算黄金比率
如何为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))
答案 0 :(得分:1)
您可以使用数组。
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]