factorial
输入的阶乘
说明
示例
输入参数
提示
局限性
对于双精度输入,当
n
小于或等于21
时,结果完全相同。n
中更大的值会生成具有正确的数量级且精确到前 15 位数字的结果。这是因为双精度数只能精确到 15 位数字。对于单精度输入,当
n
小于或等于13
时,结果完全相同。n
中更大的值会生成具有正确的数量级且精确到前 8 位数字的结果。这是因为单精度数只能精确到 8 位数字。
饱和度
下表描述了当与
factorial
函数一起使用时每种数据类型的饱和度行为。最后一列中的值指示饱和点;即,实际阶乘大于中间列中最大可表示值的第一个正整数。对于single
和double
,大于最大值的所有值都以Inf
形式返回。对于整数数据类型,饱和度值等于中间列中的最大值。数据类型 最大值 阶乘饱和阈值 double
realmax
factorial(171)
single
realmax('single')
factorial(single(35))
uint64
264-1 factorial(uint64(21))
int64
263-1 factorial(int64(21))
uint32
232-1 factorial(uint32(13))
int32
231-1 factorial(int32(13))
uint16
216-1 factorial(uint16(9))
int16
215-1 factorial(int16(8))
uint8
28-1 factorial(uint8(6))
int8
27-1 factorial(int8(6))
扩展功能
版本历史记录
在 R2006a 之前推出