📜  ml 中的阶乘程序 (1)

📅  最后修改于: 2023-12-03 15:17:40.102000             🧑  作者: Mango

ML 中的阶乘程序

在 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 中的阶乘函数是一个简单但有用的示例,可以帮助我们理解递归函数的应用和实现方式。在实际项目中,我们可以使用类似的递归函数来实现其他常用的数学函数或算法。