Go語言輸出斐波那契數列

實現一個 fibonacci 函數,它返回一個函數(閉包),該閉包返回一個斐波納契數列 `(0, 1, 1, 2, 3, 5, ...)`。

package main

import "fmt"

// 返回一個“返回int的函數”
func fibonacci() func() int {
	a:=-1
	b:=1
	return func() int{
		c:=a+b
		a=b
		b=c
		return c
	}
}

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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章