
گو از توابع بازگشتی پشتیبانی میکند. اینجا یه مثال کلاسیک فاکتوریل رو بررسی میکنیم.
package main import "fmt"
مثال fact تابع خودش رو تا زمانی که به حالت (fact(0برسه فراخوانی میکند.
func fact(n int) int { if n == 0 { return 1 } return n * fact(n-1) } func main() { fmt.Println(fact(7)) }
$ go run recursion.go 5040
<<تابع بستار----------------------------------اشاره گرها>>