编写一个 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)。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

程序

实时演示

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

更新于:04-Feb-2021

3K+ 浏览量

开启您的职业生涯

完成本课程获得认证

开始
广告