golang中循环或递归求阶乘

package main

import "fmt"

func factorialFor(num int) (ret int) {
	// 循环求阶乘
	ret = 1
	for i := 1; i <= num; i++ {
		ret *= i
	}
	return
}
func factorialRecursion(num int) int {
	// 递归求阶乘
	if num ==  0{
		return 1
	}
	return num * factorialRecursion(num - 1)
}

func main() {
	// 循环求阶乘
	ret := factorialFor(7)
	fmt.Println(ret)
	// 递归求阶乘
	ret = factorialRecursion(7)
	fmt.Println(ret)

}

  

posted @ 2021-10-12 10:58  专职  阅读(124)  评论(0编辑  收藏  举报