22 lines
430 B
Haskell
22 lines
430 B
Haskell
----------------- LINES OF FLOYDS TRIANGLE ---------------
|
|
|
|
floyds :: [[Int]]
|
|
floyds = iterate floyd [1]
|
|
|
|
floyd :: [Int] -> [Int]
|
|
floyd xs
|
|
| n < 2 = [1]
|
|
| otherwise =
|
|
[ succ (div (n * pred n) 2)
|
|
.. div (n * succ n) 2
|
|
]
|
|
where
|
|
n = succ (length xs)
|
|
|
|
|
|
--------------------------- TEST -------------------------
|
|
main :: IO ()
|
|
main = do
|
|
mapM_ print $ take 5 floyds
|
|
putStrLn ""
|
|
mapM_ print $ take 14 floyds
|