26 lines
443 B
Plaintext
26 lines
443 B
Plaintext
GET "libhdr"
|
|
|
|
LET choose(n, k) =
|
|
~(0 <= k <= n) -> 0,
|
|
2*k > n -> binomial(n, n - k),
|
|
binomial(n, k)
|
|
|
|
AND binomial(n, k) =
|
|
k = 0 -> 1,
|
|
binomial(n, k - 1) * (n - k + 1) / k
|
|
|
|
LET start() = VALOF {
|
|
LET n, k = ?, ?
|
|
LET argv = VEC 20
|
|
LET sz = ?
|
|
|
|
sz := rdargs("n/a/n/p,k/a/n/p", argv, 20)
|
|
UNLESS sz ~= 0 RESULTIS 1
|
|
|
|
n := !argv!0
|
|
k := !argv!1
|
|
|
|
writef("%d choose %d = %d *n", n, k, choose(n, k))
|
|
RESULTIS 0
|
|
}
|