編寫一個 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

更新於:04-Feb-2021

3K+ 瀏覽量

開啟您的職業生涯

完成本課程獲得認證

開始
廣告
© . All rights reserved.