Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Haskell
Перезагрузить страницу ПОМОГИТЕЕЕ ЧТО ВЫВЕСТИ В MAIN?
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
ЛЕНО4ка ЛЕНО4ка вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 12.11.2013
По умолчанию ПОМОГИТЕЕЕ ЧТО ВЫВЕСТИ В MAIN? - 12.11.2013, 23:51

data Employee = Employee { uid :: String, sub :: [Employee] } deriving (Eq, Show)

hierarchy = Employee "Simon"
[
Employee "Eva" [Employee "Dons" [Employee "Io" []]],
Employee "Ron" []
]

orelse = (++)

getSubordinates :: Employee -> String -> [Employee]
getSubordinates hs uid1 = aux hs
where aux x
| uid x /= uid1 = foldr (orelse . aux) [] (sub x)
aux x = sub x

getAllSubordinates :: Employee -> String -> [Employee]
getAllSubordinates hs = go . getSubordinates hs
where
go = concatMap (\x1 -> x1 : go (sub x1))

getBoss :: Employee -> String -> [Employee]
getBoss hs uid1 = aux [] hs
where aux s x
| uid x /= uid1 = foldr (orelse . aux [x]) [] (sub x)
aux s _ = s

getList :: Employee -> [(String, Int)]
getList hs = (uid hs, length xs) : xs
where
xs = concatMap getList (sub hs)
Ответить с цитированием
  (#2 (permalink)) Старый
calabi-yau calabi-yau вне форума
Member
 
Сообщений: 338
Сказал(а) спасибо: 0
Поблагодарили 10 раз(а) в 10 сообщениях
Регистрация: 28.09.2009
По умолчанию 13.11.2013, 03:09

haskell Код:
main = do print $ getSubordinates hierarchy "Eva"
          print $ getAllSubordinates hierarchy "Eva"
          print $ getBoss hierarchy "Eva"
          print $ getList hierarchy


Don't fear the Monad
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогитеее!!!! KinGz Видеокарты 16 10.04.2013 23:09
помогитеее пожалуйста!!! LLLarion Любые вопросы от новичков 6 03.01.2012 17:27
людиииии!!!!помогитеее!!! алинка1 Любые вопросы от новичков 6 09.08.2011 22:38
как переделать main::run в nondeterm anyflow ? 2QWERY Prolog 10 30.03.2011 19:49
Рекурсивный вызов функции main Gock C++ Builder 7 08.04.2010 22:35
Проблема с монитором Philips 170S6FS, появляется сообщение OSD MAIN CONTROLS LOCKED. Dimastuy Техническая поддержка 3 25.01.2009 23:09
По Main как использовать эту функцию BD .NET 4 21.01.2007 17:30
Caption для Main и PopupMenu из файла ini Виталик 1 Delphi 4 15.09.2006 11:43
Could not find the main class. Program will exit как исправить MMMM Java 4 03.11.2005 19:20
Функция main() на С++ и метод по книге Дж. Смайли pendalegi Вопросы начинающих программистов 22 04.10.2005 13:27
Значение, возвращаемой функцией main imported__Sergey_ С/С++ 1 03.06.2005 03:49
C чем может быть связана ошибка Project Main.exe raised exception class real C++ Builder 2 10.06.2003 13:12



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов