N over K
A fast and stable computation of:  n! / (k! * (n-k)!)
This is the number of combinations, if k elements are chosen out of n without
repetitions and order.
[c, OF] = NoverK(n, k)
INPUT:
  n, k: Scalars with real integer values, floating point or integer types.
OUTPUT:
  c:    Result as same type as the inputs.
  OF: Logical flag, true on overflow.
NOTES:
-  Alternatives:
  prod(((n-k+1):n) ./ (1:k))   3 times slower, less accurate
  nchoosek(n, k)              20 times slower, less accurate:
    nchoosek(61, 17)   536830054536826  (14 valid digits only)
    NoverK(61, 17)     536830054536825
  The accuracy and overflow handling was the main reason to write this function.
Tested: Matlab 2009a (no U/INT64!), 2015b(32/64), 2016b, 2018b, Win10
Cite As
Jan (2025). NoverK (https://nl.mathworks.com/matlabcentral/fileexchange/100174-noverk), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
              Created with
              R2018b
            
            
              Compatible with R2009b and later releases
            
          Platform Compatibility
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
