1 package main
2
3 import "fmt"
4
5 func getSum(n int) int {
6 fmt.Println("**********")
7 if n == 1 {
8 return 1
9 }
10 return getSum(n-1) + n
11 }
12
13 func getFibonacci(n int) int {
14 if n == 1 || n == 2 {
15 return 1
16 }
17 return getFibonacci(n-1) + getFibonacci(n-2)
18 }
19
20 func main() {
21 /*
22 递归函数(recursion):一个函数自己调用自己,就叫做递归函数。
23 递归函数要有一个出口,逐渐的向出口靠近
24 */
25
26 // 1.求1-5的和
27 sum := getSum(5)
28 fmt.Println(sum)
29
30 //2.fibonacci数列:
31 /*
32 1 2 3 4 5 6 7 8 9 10 11 12 。。。
33 1 1 2 3 5 8 13 21 34 55 89 144
34
35
36 */
37 res := getFibonacci(12)
38 fmt.Println(res)
39 }