Go podle Příkladů: Rekurze

Go podporuje rekurzivní funkce. Tady je klasický příklad faktoriálu.

package main
import "fmt"

Tato funkce fact volá samu sebe dokud nedosáhne základního stavu 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

Další příklad: Ukazatelé (pointers).