用go写斐波纳契

package main

import (
	"fmt"
)
//0 1 1 2 3 5 8
func fibonacci() func(int) int {
	a0:=0
	a1:=1
	return func(i int) int {
		if i==0{
			return a0
		}else if i==1{
			return a1
		}else{
			temp:=a0+a1
			a0=a1
			a1=temp
			return temp
		}
	}
}

func main() {
	f := fibonacci()
	for i := 0; i < 10; i++ {
		fmt.Println(f(i))
	}
}

输出:0、1、1、2、3、5、8、13、21、34

猜你喜欢

转载自blog.csdn.net/qq_20867981/article/details/82496165