fact {pracma} | R Documentation |
Factorial Function
Description
Factorial for non-negative integers n <= 170
.
Usage
fact(n)
factorial2(n)
Arguments
n |
Vector of integers, for |
Details
The factorial is computed by brute force; factorials for n >= 171
are not representable as ‘double’ anymore.
Value
fact
returns the factorial of each element in n
.
If n < 0
the value is NaN
, and for n > 170
it is Inf
.
Non-integers will be reduced to integers through floor(n)
.
factorial2
returns the product of all even resp. odd integers,
depending on whether n
is even or odd.
Note
The R core function factorial
uses the gamma
function,
whose implementation is not accurate enough for larger input values.
See Also
Examples
fact(c(-1, 0, 1, NA, 171)) #=> NaN 1 1 NA Inf
fact(100) #=> 9.332621544394410e+157
factorial(100) #=> 9.332621544394225e+157
# correct value: 9.332621544394415e+157
# Stirling's approximation: 9.324847625269420e+157
# n! ~ sqrt(2*pi*n) * (n/e)^n
factorial2(8); factorial2(9); factorial2(10) # 384 945 3840
factorial(10) / factorial2(10) # => factorial2(9)
[Package pracma version 2.4.4 Index]