home *** CD-ROM | disk | FTP | other *** search
- ############################################################################
- #
- # File: binocoef.icn
- #
- # Subject: Procedure for binomial coefficient
- #
- # Author: Ralph E. Griswold
- #
- # Date: September 6, 1992
- #
- ###########################################################################
- #
- # binocoef(n, k) returns the binomial coefficient n over k. It fails
- # unless 0 <= k <= n.
- #
- ############################################################################
- #
- # Requires: Large integer arithmetic for all but small values of n and k.
- #
- ############################################################################
- #
- # Links: factorl
- #
- ############################################################################
-
- link factorl
-
- procedure binocoef(n, k)
-
- k := integer(k) | fail
- n := integer(n) | fail
-
- if 0 <= k <= n then
- return factorl(n) / (factorl(k) * factorl(n - k))
- else fail
-
- end
-