image thumbnail

Permutations without overflow

version 1.0.0 (1.18 KB) by Lawrence Agbezuge
The use of the factorial function in computing permutations and combinations has overflow problems that are avoided by these two functions.


Updated 26 Jan 2020

View License

The use of the factorial function in computing nPr = n!/(n-r)! or in computing nCr = n!/((n-r)!*r!) has overflow problems when n>170 on a 64-bit machine.
These two functions: Perm(n,r) and Comb(n,r) avoid the overflow problem.
nPr is defined as Perm(n,r) and nCr is defined as Comb(n,r).

If n=171, factorial(n) = Inf on a 64-bit machine.
Therefore, neither P(171,15) nor C(171,15) can be evaluated directly.
Perm(171,15) = 1.6611e33, and
Comb(171,15) = 1.2703e21.
Perm(1000,49) = 3.0256e+146, and
Comb(171,15) = 4.9740e+83.

These two functions are useful in predicting the outcomes of Bernoulli experiments that utilize the binomial distribution.

Cite As

Lawrence Agbezuge (2021). Permutations without overflow (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2019b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!