Lah numbers: Difference between revisions

Content added Content deleted
Line 484: Line 484:
displayLah :: (Int, Int) -> IO ()
displayLah :: (Int, Int) -> IO ()
displayLah (n, k) = do
displayLah (n, k) = do
when (k == 0) (printf "%3d" n)
when (k == 0) (printf "\n%3d" n)
printf "%11d" (lah n k)
printf "%11d" (lah n k)
when (k == 12) (printf "\n")


main :: IO ()
main :: IO ()
Line 492: Line 491:
printf "Unsigned Lah numbers: L(n, k):\nn/k"
printf "Unsigned Lah numbers: L(n, k):\nn/k"
mapM_ (printf "%11d") ([0..12] :: [Int])
mapM_ (printf "%11d") ([0..12] :: [Int])
printf "\n"
mapM_ displayLah [(n, k) | n <- [0..12], k <- [0..12]]
mapM_ displayLah [(n, k) | n <- [0..12], k <- [0..12]]
printf "\nMaximum value from the L(100, *) row:\n%d\n"
printf "\nMaximum value from the L(100, *) row:\n%d\n"