Go က recursive functions ကို support လုပ်ပါတယ်။ Recursive function ကိုနမူနာပြနေကြ factorial နမူနာကိုတချက်ကြည့်လိုက်ကြရအောင်။ |
|
package main |
|
import "fmt" |
|
ဒီ |
func fact(n int) int { if n == 0 { return 1 } return n * fact(n-1) } |
func main() { fmt.Println(fact(7)) |
|
Closures လဲ recursive ဖြစ်လို့ရတယ်၊ ဒါပေမယ့် closure function ကို defined မလုပ်ခင်
type ကို |
var fib func(n int) int |
fib = func(n int) int { if n < 2 { return n } |
|
|
return fib(n-1) + fib(n-2) } |
fmt.Println(fib(7)) } |
$ go run recursion.go 5040 13 |
နောက်ဥပမာ: Pointers.