Go за Прикладом: Рекурсія (Recursion)

Work in Progress / Сайт в процесі розробки

Go підтримує рекурсивні функції і ось класичний приклад.

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

Наступний приклад: Вказівники (Pointers).