📅  最后修改于: 2023-12-03 15:17:40.102000             🧑  作者: Mango
在 ML 中,我们可以使用递归函数来实现阶乘函数。阶乘函数的定义为:n! = 1 × 2 × 3 × ... × n,其中 n 为正整数。
以下是 ML 代码实现阶乘函数的示例:
fun factorial n =
if n = 0 then
1
else
n * factorial(n-1)
这段代码定义了一个名为 factorial
的函数,接收一个参数 n
,并使用了 if-then-else 结构对 n
进行判断,如果 n
为 0,返回 1,否则计算 n
的阶乘并返回。
我们可以使用以下代码调用 factorial
函数计算 5!:
val result = factorial 5
这会将 factorial 5
计算的结果赋值给 result
变量。
ML 中的阶乘函数是一个简单但有用的示例,可以帮助我们理解递归函数的应用和实现方式。在实际项目中,我们可以使用类似的递归函数来实现其他常用的数学函数或算法。