RosettaCodeData/Task/Lah-numbers/Pluto/lah-numbers.pluto
2026-04-30 12:34:36 -04:00

22 lines
578 B
Text

local int = require "int"
local fmt = require "fmt"
$alias fact = int.factorial
local function lah(n, k)
if k == 1 then return fact(n) end
if k == n then return 1 end
if k > n then return 0 end
if k < 1 or n < 1 then return 0 end
return (fact(n) * fact(n - 1)) // (fact(k) * fact(k - 1)) // fact(n - k)
end
print("Unsigned Lah numbers: l(n, k):")
io.write("n/k")
for i = 0, 12 do fmt.write("%10d ", i) end
print("\n" .. string.rep("-", 145))
for n = 0, 12 do
fmt.write("%2d ", n)
for k = 0, n do fmt.write("%10d ", lah(n, k)) end
print()
end