編寫一個 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
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP