我試圖定義一個函數,它需要一個[[Char]]類型的圖片並複製每個元素。但是,它需要將該複製的新圖像複製並垂直添加。我能夠使用「複製」並複製每個元素兩次,但我不確定如何複製新圖像。我所做的只是追加了兩次複製,但只是「附加」水平,而不是垂直。這裏是我的代碼:如何複製列表並將其垂直追加到Haskell中
type Picture = [[Char]]
picture::Picture
picture = ["#", ".", "#"]
replicating::Picture->Picture
replicating pic = concatMap (replicate 2) piC++ concatMap (replicate 2) pic
main = do
print(replicating picture)
最後,我想實現這個形象:
##..##
##..##
到目前爲止,我只有這個:
##..####..##
感謝。
看起來你只是在你的兩個'concatMap'之間缺少一個換行''\ n「' – luqui 2014-09-26 00:53:30
你需要一個'\ n'字符。或者你製作一個行列表並使用'unlines'函數。 – Mephy 2014-09-26 00:53:54
那麼我應該在哪裏放置「\ n」? – 2014-09-26 01:01:19