Evaluate binomial coefficients: Difference between revisions
Content added Content deleted
(→{{header|Java}}: add more implementations, especially some reliable ones) |
|||
Line 2,277: | Line 2,277: | ||
(define (choose n k) |
(define (choose n k) |
||
(/ (factorial n) (* (factorial k) (factorial (- n k))))) |
(/ (factorial n) (* (factorial k) (factorial (- n k))))) |
||
(display (choose 5 3)) |
|||
(newline)</lang> |
|||
{{Out}} |
|||
<pre>10</pre> |
|||
Alternatively a recursive implementation can be constructed from Pascal's Triangle: |
|||
<lang scheme>(define (pascal i j) |
|||
(cond ((= i 0) 1) |
|||
((= j 0) 1) |
|||
(else (+ |
|||
(pascal (- i 1) j) |
|||
(pascal i (- j 1)))))) |
|||
(define (choose n k) |
|||
(pascal (- n k) k))) |
|||
(display (choose 5 3)) |
(display (choose 5 3)) |