RosettaCodeData/Task/Sierpinski-triangle/Haskell/sierpinski-triangle-1.hs
2023-07-01 13:44:08 -04:00

7 lines
242 B
Haskell

sierpinski 0 = ["*"]
sierpinski n = map ((space ++) . (++ space)) down ++
map (unwords . replicate 2) down
where down = sierpinski (n - 1)
space = replicate (2 ^ (n - 1)) ' '
main = mapM_ putStrLn $ sierpinski 4