阶乘这一概念广泛存在于数学的诸多分支,并被用来解决大量实际问题。
在本教程中,我们将学习什么是一个数的阶乘、它的用途、如何在 Excel 中计算阶乘、在 Excel 中计算阶乘时需要注意的限制与可能问题、可以在 Excel 中计算的一些阶乘变体,以及几个涉及阶乘计算的 Excel 函数。过程中,我们还会结合一些阶乘应用示例。
如需学习或巩固 Excel 知识,您可以参考 Introduction to Excel 课程和 Excel Formulas Cheat Sheet。
什么是阶乘?它有什么用途?
一个正整数的阶乘是从 1 到该数(包含该数)所有整数的乘积。阶乘的数学记号是将感叹号紧跟在要计算阶乘的数字之后。
例如,要计算 7!(读作“7 的阶乘”),我们需要将 1 到 7 的所有整数相乘:7! = 1*2*3*4*5*6*7。该表达式的结果为 5040。
通俗地说,n 的阶乘表示在必须使用全部 n 个彼此不同的对象、且对排列没有额外限制的情况下,我们可以对这 n 个对象进行排列的方式数。
回到上面 7! 的例子,我们可以用该公式求出把 7 本不同的书在书架上一字排开的不同摆放方式有多少种。
作为计算组合与排列的基础,阶乘被广泛应用于数学(包括代数、概率论、组合数学、数论、博弈论等)、统计学、计算机科学、人工智能、工程学、自然科学、经济学、金融与商业等领域。
如何在 Excel 中计算阶乘
如果我们尝试在 Excel 单元格中输入 =7! 来计算 7 的阶乘,软件会给出警告。这是因为 Excel 不将阶乘的数学写法识别为有效运算。
要在 Excel 中计算 n 的阶乘,我们可以使用其他方法:既可以直接将 1 到 n 的所有整数相乘(1*2*3*...*n),也可以组合使用 Excel 函数(例如 PRODUCT(SEQUENCE(n)))。
不过,在 Excel 中计算一个数的阶乘,最直接的方法是使用专用的 FACT 函数。该函数自 Excel 2000 起在所有版本中均可用。
FACT 函数
语法
FACT 函数的语法非常简单,仅有一个必需参数:
FACT(number),
其中 number 是我们要求阶乘的非负数。
该函数返回一个数的阶乘。
注意,我们可以将数字本身传入函数(例如 FACT(7)),也可以传入存放该数字的单元格地址(例如 FACT(A1))。
FACT 函数既可单独使用,也可在公式中与其他函数和数学运算配合使用。例如,FACT(10)/(FACT(2)* FACT(8))。
如需了解 Excel 中其他常用函数,可参考教程 The 15 Basic Excel Formulas Everyone Needs to Know。
用法
我们可以通过以下三种方式之一在 Excel 中使用 FACT 函数:
- 单击要显示函数结果的单元格,输入等号,开始输入函数名,并在下拉列表中选择它:

接着,输入我们要求阶乘的数字本身,或存放该数字的单元格地址,关闭括号并按下 Enter。
- 单击要显示函数结果的单元格,点击编辑栏,输入等号,开始输入函数名,并在下拉列表中选择它:

接着,输入我们要求阶乘的数字本身,或存放该数字的单元格地址,关闭括号并按下 Enter。
- 单击要显示函数结果的单元格,打开
Formulas 选项卡,在 Function Library 组下选择 Maths & Trig 类别,向下滚动到 FACT 函数并点击它:

在弹出的 Function Arguments 窗口中,我们可以逐一输入要计算阶乘的多个数字或其单元格地址,并在点击 OK 前立即看到每个值的结果;点击 OK 后将显示最后一个输入值的 FACT 函数结果。
此外,此窗口还会提醒我们阶乘的定义、函数语法以及函数文档的获取位置:

特殊情况
- FACT(0) = 1
- FACT(1) = 1
- 对小数应用 FACT 函数:数字会在内部被截断,只返回其整数部分的阶乘。
可能的错误
#VALUE!——传入了非数值。
#NUM!——传入的值为负数或大于等于 171。
限制
在前一节中我们提到,如果向 FACT 传入一个大于等于 171 的数字,会返回 #NUM! 错误。这是由于 Excel 的内在限制之一:Excel 能计算的正数有上限,而当我们尝试计算 FACT(171) 时会超出该上限。因此,在不触发 #NUM! 错误的情况下,Excel 可计算的最大阶乘是 170 的阶乘(等于 7.257415615308E+306)。
此外,由于数值精度限制,Excel 无法对如此大的阶乘进行精确计算。
考虑到阶乘增长极快,较小的输入就会产生非常大的输出,Excel 能够精确计算阶乘的最大输入(尽管由于四舍五入限制无法精确显示结果)是 22。
如果需要计算大数的阶乘,我们可以通过一些变通方法来克服或缓解这些限制,例如使用 Excel VBA(Visual Basic for Applications,Excel 内置的编程语言)或专用的 Excel 外接程序。
不过,如果确实需要处理如此大的数值,选择除 Excel 之外的其他软件可能更高效。
示例
在本教程开头,我们已经提到过一个阶乘的应用示例:要计算将 7 本不同的书在书架上排成一行的方式数,我们需要用数学记号计算 7!,在 Excel 中则为 FACT(7)。
我们再看两个示例。
- 假设书架上有 10 本书(没错,我是个书虫 😉),我们想随机选出其中 4 本作为假期读物。从 10 本中选 4 本共有多少种组合?在数学中,这是不放回的组合。在 Excel 中,我们可以用 FACT 进行计算:FACT(10)/(FACT(4)* FACT(10-4))。结果为 210。
- 假设我们有一叠 10 张卡片,每张上面写着一门外语中的一个单词。我们想通过抽取卡片并翻译其上的单词来复习。每次抽取后把卡片放回牌堆,并重复 4 次,这意味着同一张卡可能被抽到多次。从 10 张卡片中(允许重复)抽取 4 次共有多少种组合?在数学中,这是有放回的组合。在 Excel 中,我们可以用 FACT 进行计算:FACT(4+10-1)/(FACT(4) * FACT(10-1))。结果为 715。
在下面讨论与阶乘相关的 Excel 函数时,我们会回到这两个示例。
如果您希望加深对目前内容的理解,Data Analysis in Excel 课程将通过学习数据透视表、中级逻辑函数、假设分析、趋势预测等高级分析技术,帮助您将 Excel 技能提升到新水平。
用于计算特定类型阶乘的 Excel 函数
除了我们在本教程开头定义的常规阶乘外,数学中还有其他类型的阶乘:双阶乘、素数阶乘、超阶乘等。这些阶乘类型较为专业,通常用于复杂数学公式的一部分。下面简要介绍两个可在 Excel 中直接计算这类阶乘的函数:FACTDOUBLE 和 GAMMA。
FACTDOUBLE 函数
FACTDOUBLE 函数用于计算一个数的双阶乘,即小于或等于该输入数、且与该输入数奇偶性相同的所有正整数的乘积。在数学中,双阶乘用两个感叹号表示。例如,8!! = 2 * 4 * 6 * 8 = 384(在 Excel 中为 FACTDOUBLE(8))。
FACTDOUBLE 函数的语法与 FACT 函数非常相似:
FACTDOUBLE(number),
其中 number 是我们要求双阶乘的非负数。
关于 FACT 函数先前讨论的内容(用法、特殊情况、可能错误与限制)在此也同样适用,唯一的例外是 Excel 能计算的双阶乘的最大值不同。
对于常规阶乘,该上限对应的数字是 170;对于双阶乘,是 300。尝试计算 FACTDOUBLE(301) 会返回 #NUM! 错误。
GAMMA 函数
这是数学伽马函数的实现,它将阶乘扩展到复数。 在 Excel 中,我们可以对负小数与正小数使用 GAMMA 函数。
GAMMA 函数的语法如下:
GAMMA(number)
其中 number 是我们要求其伽马函数值的负小数或正数。
注意,向函数传入负整数或 0 会返回 #NUM! 错误。
与阶乘相关的 Excel 函数
一些 Excel 函数在更复杂的公式中包含阶乘的计算。我们快速了解一下可以用于计算组合与排列数量的这些函数。
COMBIN 与 COMBINA 函数
Excel 中的 COMBIN 与 COMBINA 函数都返回组合的数量,即当选择顺序不重要时,从一个集合中选择指定数量项目的方式数。二者的区别在于:COMBIN 不允许项目重复,而 COMBINA 允许。
两者语法相同,下面以 COMBIN 为例:
COMBIN(number, number_chosen)
其中
- number——集合中的项目总数,
- number_chosen——每个组合中的项目数。
前面我们讨论过用 FACT 计算组合的两个示例。回到这两个例子,我们可以用 COMBIN 与 COMBINA 更轻松地完成计算。
- 假设书架上有 10 本书,我们想随机选出 4 本作为假期读物。从 10 本中选 4 本共有多少种组合?COMBIN(10, 4) = 210。
- 假设有一叠 10 张卡片,每张上写着我们学习的一门外语中的一个单词。我们通过抽取一张并翻译其上的单词来复习。每次抽取后把卡片放回,并重复 4 次,意味着同一张卡可能被抽到多次。从 10 张卡片中(考虑可能的重复)抽取 4 次共有多少种组合?COMBINA(10, 4) = 715。
PERMUT 与 PERMUTATIONA 函数
Excel 中的 PERMUT 与 PERMUTATIONA 函数都返回排列的数量,即当选择顺序重要时,从一个集合中选择指定数量项目的方式数。两者的区别在于:PERMUT 不允许项目重复,而 PERMUTATIONA 允许。
两者语法相同,下面以 PERMUT 为例:
PERMUT(number, number_chosen)
其中
- number——集合中的项目总数,
- number_chosen——每个排列中的项目数。
结论
我们讨论了数的阶乘定义、阶乘的主要应用领域、在 Excel 中使用 FACT 函数计算阶乘的最直接方法、使用该函数时需要注意的特殊情况、可能错误与限制、一些特定类型的阶乘及其在 Excel 中的计算方法,以及与阶乘计算相关的 Excel 函数。此外,我们还查看了几个涉及阶乘的计算示例,并介绍了如何更高效地完成这些计算。
若您希望向潜在或现任雇主展示自己的 Excel 能力,从而提升就业竞争力与职业发展机会,建议获取 Microsoft Excel 认证。How to Earn a Microsoft Excel Certification in 2024: Top Tips and Resources 指南将为您提供详细的分步说明、考试洞见与专家建议,帮助您获得官方 Excel 认证。
阶乘这一概念广泛存在于数学的诸多分支,并被用来解决大量实际问题。
在本教程中,我们将学习什么是一个数的阶乘、它的用途、如何在 Excel 中计算阶乘、在 Excel 中计算阶乘时需要注意的限制与可能问题、可以在 Excel 中计算的一些阶乘变体,以及几个涉及阶乘计算的 Excel 函数。过程中,我们还会结合一些阶乘应用示例。
如需学习或巩固 Excel 知识,您可以参考 Introduction to Excel 课程和 Excel Formulas Cheat Sheet。
什么是阶乘?它有什么用途?
一个正整数的阶乘是从 1 到该数(包含该数)所有整数的乘积。阶乘的数学记号是将感叹号紧跟在要计算阶乘的数字之后。
例如,要计算 7!(读作“7 的阶乘”),我们需要将 1 到 7 的所有整数相乘:7! = 1*2*3*4*5*6*7。该表达式的结果为 5040。
通俗地说,n 的阶乘表示在必须使用全部 n 个彼此不同的对象、且对排列没有额外限制的情况下,我们可以对这 n 个对象进行排列的方式数。
回到上面 7! 的例子,我们可以用该公式求出把 7 本不同的书在书架上一字排开的不同摆放方式有多少种。
作为计算组合与排列的基础,阶乘被广泛应用于数学(包括代数、概率论、组合数学、数论、博弈论等)、统计学、计算机科学、人工智能、工程学、自然科学、经济学、金融与商业等领域。
如何在 Excel 中计算阶乘
如果我们尝试在 Excel 单元格中输入
=7!来计算 7 的阶乘,软件会给出警告。这是因为 Excel 不将阶乘的数学写法识别为有效运算。要在 Excel 中计算 n 的阶乘,我们可以使用其他方法:既可以直接将 1 到 n 的所有整数相乘(1*2*3*...*n),也可以组合使用 Excel 函数(例如 PRODUCT(SEQUENCE(n)))。
不过,在 Excel 中计算一个数的阶乘,最直接的方法是使用专用的 FACT 函数。该函数自 Excel 2000 起在所有版本中均可用。
FACT 函数
语法
FACT 函数的语法非常简单,仅有一个必需参数:
FACT(number),
其中 number 是我们要求阶乘的非负数。
该函数返回一个数的阶乘。
注意,我们可以将数字本身传入函数(例如 FACT(7)),也可以传入存放该数字的单元格地址(例如 FACT(A1))。
FACT 函数既可单独使用,也可在公式中与其他函数和数学运算配合使用。例如,FACT(10)/(FACT(2)* FACT(8))。
如需了解 Excel 中其他常用函数,可参考教程 The 15 Basic Excel Formulas Everyone Needs to Know。
用法
我们可以通过以下三种方式之一在 Excel 中使用 FACT 函数:
接着,输入我们要求阶乘的数字本身,或存放该数字的单元格地址,关闭括号并按下
Enter。接着,输入我们要求阶乘的数字本身,或存放该数字的单元格地址,关闭括号并按下
Enter。Formulas选项卡,在Function Library组下选择Maths & Trig类别,向下滚动到 FACT 函数并点击它:在弹出的
Function Arguments窗口中,我们可以逐一输入要计算阶乘的多个数字或其单元格地址,并在点击OK前立即看到每个值的结果;点击OK后将显示最后一个输入值的 FACT 函数结果。此外,此窗口还会提醒我们阶乘的定义、函数语法以及函数文档的获取位置:
特殊情况
可能的错误
#VALUE!——传入了非数值。#NUM!——传入的值为负数或大于等于 171。限制
在前一节中我们提到,如果向 FACT 传入一个大于等于 171 的数字,会返回
#NUM!错误。这是由于 Excel 的内在限制之一:Excel 能计算的正数有上限,而当我们尝试计算 FACT(171) 时会超出该上限。因此,在不触发#NUM!错误的情况下,Excel 可计算的最大阶乘是 170 的阶乘(等于 7.257415615308E+306)。此外,由于数值精度限制,Excel 无法对如此大的阶乘进行精确计算。
考虑到阶乘增长极快,较小的输入就会产生非常大的输出,Excel 能够精确计算阶乘的最大输入(尽管由于四舍五入限制无法精确显示结果)是 22。
如果需要计算大数的阶乘,我们可以通过一些变通方法来克服或缓解这些限制,例如使用 Excel VBA(Visual Basic for Applications,Excel 内置的编程语言)或专用的 Excel 外接程序。
不过,如果确实需要处理如此大的数值,选择除 Excel 之外的其他软件可能更高效。
示例
在本教程开头,我们已经提到过一个阶乘的应用示例:要计算将 7 本不同的书在书架上排成一行的方式数,我们需要用数学记号计算 7!,在 Excel 中则为 FACT(7)。
我们再看两个示例。
在下面讨论与阶乘相关的 Excel 函数时,我们会回到这两个示例。
如果您希望加深对目前内容的理解,Data Analysis in Excel 课程将通过学习数据透视表、中级逻辑函数、假设分析、趋势预测等高级分析技术,帮助您将 Excel 技能提升到新水平。
用于计算特定类型阶乘的 Excel 函数
除了我们在本教程开头定义的常规阶乘外,数学中还有其他类型的阶乘:双阶乘、素数阶乘、超阶乘等。这些阶乘类型较为专业,通常用于复杂数学公式的一部分。下面简要介绍两个可在 Excel 中直接计算这类阶乘的函数:FACTDOUBLE 和 GAMMA。
FACTDOUBLE 函数
FACTDOUBLE 函数用于计算一个数的双阶乘,即小于或等于该输入数、且与该输入数奇偶性相同的所有正整数的乘积。在数学中,双阶乘用两个感叹号表示。例如,8!! = 2 * 4 * 6 * 8 = 384(在 Excel 中为 FACTDOUBLE(8))。
FACTDOUBLE 函数的语法与 FACT 函数非常相似:
FACTDOUBLE(number),
其中 number 是我们要求双阶乘的非负数。
关于 FACT 函数先前讨论的内容(用法、特殊情况、可能错误与限制)在此也同样适用,唯一的例外是 Excel 能计算的双阶乘的最大值不同。
对于常规阶乘,该上限对应的数字是 170;对于双阶乘,是 300。尝试计算 FACTDOUBLE(301) 会返回
#NUM!错误。GAMMA 函数
这是数学伽马函数的实现,它将阶乘扩展到复数。 在 Excel 中,我们可以对负小数与正小数使用 GAMMA 函数。
GAMMA 函数的语法如下:
GAMMA(number)
其中 number 是我们要求其伽马函数值的负小数或正数。
注意,向函数传入负整数或 0 会返回
#NUM!错误。与阶乘相关的 Excel 函数
一些 Excel 函数在更复杂的公式中包含阶乘的计算。我们快速了解一下可以用于计算组合与排列数量的这些函数。
COMBIN 与 COMBINA 函数
Excel 中的 COMBIN 与 COMBINA 函数都返回组合的数量,即当选择顺序不重要时,从一个集合中选择指定数量项目的方式数。二者的区别在于:COMBIN 不允许项目重复,而 COMBINA 允许。
两者语法相同,下面以 COMBIN 为例:
COMBIN(number, number_chosen)
其中
前面我们讨论过用 FACT 计算组合的两个示例。回到这两个例子,我们可以用 COMBIN 与 COMBINA 更轻松地完成计算。
PERMUT 与 PERMUTATIONA 函数
Excel 中的 PERMUT 与 PERMUTATIONA 函数都返回排列的数量,即当选择顺序重要时,从一个集合中选择指定数量项目的方式数。两者的区别在于:PERMUT 不允许项目重复,而 PERMUTATIONA 允许。
两者语法相同,下面以 PERMUT 为例:
PERMUT(number, number_chosen)
其中
结论
我们讨论了数的阶乘定义、阶乘的主要应用领域、在 Excel 中使用 FACT 函数计算阶乘的最直接方法、使用该函数时需要注意的特殊情况、可能错误与限制、一些特定类型的阶乘及其在 Excel 中的计算方法,以及与阶乘计算相关的 Excel 函数。此外,我们还查看了几个涉及阶乘的计算示例,并介绍了如何更高效地完成这些计算。
若您希望向潜在或现任雇主展示自己的 Excel 能力,从而提升就业竞争力与职业发展机会,建议获取 Microsoft Excel 认证。How to Earn a Microsoft Excel Certification in 2024: Top Tips and Resources 指南将为您提供详细的分步说明、考试洞见与专家建议,帮助您获得官方 Excel 认证。