Lah numbers: Difference between revisions
Content added Content deleted
(→{{header|Ruby}}: correction for (0,0) case) |
|||
Line 1,334: | Line 1,334: | ||
def lah(n, k) |
def lah(n, k) |
||
return 0 if n < 1 |
|||
case k |
case k |
||
when 1 then fact(n) |
when 1 then fact(n) |
||
when n then 1 |
when n then 1 |
||
when (..1),(n..) then 0 |
when (..1),(n..) then 0 |
||
else (fact(n)*fact(n-1)) / (fact(k)*fact(k-1)) / fact(n-k) |
else n<1 ? 0 : (fact(n)*fact(n-1)) / (fact(k)*fact(k-1)) / fact(n-k) |
||
end |
end |
||
end |
end |
||
Line 1,358: | Line 1,357: | ||
<pre>Unsigned Lah numbers: L(n, k): |
<pre>Unsigned Lah numbers: L(n, k): |
||
n/k 0 1 2 3 4 5 6 7 8 9 10 11 12 |
n/k 0 1 2 3 4 5 6 7 8 9 10 11 12 |
||
0 |
0 1 |
||
1 0 1 |
1 0 1 |
||
2 0 2 1 |
2 0 2 1 |
||
Line 1,376: | Line 1,375: | ||
siep@siep-desktop:~$ |
siep@siep-desktop:~$ |
||
</pre> |
</pre> |
||
=={{header|Sidef}}== |
=={{header|Sidef}}== |
||
<lang ruby>func lah(n, k) { |
<lang ruby>func lah(n, k) { |