编写Golang程序以查找给定数字的阶乘(使用递归)

例子

5的阶乘= 5 * 4 * 3 * 2 * 1 = 120

10的阶乘= 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 =

解决这个问题的方法

  • 步骤1:定义一个接受数字(大于0)的函数,类型为int。

  • 步骤2:如果数字为1,则返回1。

  • 步骤3:否则,返回num * function(num-1)。

程序

package main
import "fmt"
func factorial(num int) int{
   if num == 1 || num == 0{
      return num
   }
   return num * factorial(num-1)
}
func main(){
   fmt.Println(factorial(3))
   fmt.Println(factorial(4))
   fmt.Println(factorial(5))
}
输出结果
6
24
120