Печать списков в Haskell new - PullRequest
0 голосов
/ 29 марта 2019

Совершенно новый для Haskell, и мне нужно распечатать данные, содержащиеся в отдельной строке для каждого отдельного элемента

Не знаю, как

type ItemDescr = String
type ItemYear = Int
type ItemPrice = Int
type ItemSold = Int
type ItemSales = Int
type Item = (ItemRegion,ItemDescr,ItemYear,ItemPrice,ItemSold,ItemSales)
type ListItems = [Item]

rownumber x
 | x == 1  = ("Scotland","Desktop",2017,900,25,22500)
 | x == 2  = ("England","Laptop",2017,1100,75,82500)
 | x == 3  = ("Wales","Printer",2017,120,15,1800)
 | x == 4  = ("England","Printer",2017,120,60,7200)
 | x == 5  = ("England","Desktop",2017,900,50,45000)
 | x == 6  = ("Wales","Desktop",2017,900,20,18000)
 | x == 7  = ("Scotland","Printer",2017,25,25,3000)

showall
--print??

Так, например, на каждой отдельной строкепокажите

"Шотландия", "Рабочий стол", 2017,900,25,22500

с последующей следующей записью

1 Ответ

0 голосов
/ 29 марта 2019

Совет 1:

Храните данные, как это

items = [("Scotland","Desktop",2017,900,25,22500),
         ("England","Laptop",2017,1100,75,82500),
         ("Wales","Printer",2017,120,15,1800),
         ("England","Printer",2017,120,60,7200),
         ("England","Desktop",2017,900,50,45000),
         ("Wales","Desktop",2017,900,20,18000),
         ("Scotland","Printer",2017,25,25,3000)]

Совет 2:

Реализовать эту функцию

toString :: Item -> String
toString = undefined -- do this yourselves

Совет 3:

Попробуйте объединить следующие функции

  • unlines, уже в прелюдии
  • toString, вы только что написали
  • map, объяснений не требуется
  • putStrLn, даже не уверен, что это реальная функция, но она все равно нужна.
  • ($), вы можете обойтись без этого, но он даст вам бонусные очки
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...