Оставить в списке только повторяющиеся элементы., WinHugs, Haskell |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Оставить в списке только повторяющиеся элементы., WinHugs, Haskell |
Юлия |
21.12.2011 22:53
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Пол: Женский Реальное имя: Юлия Репутация: 0 |
Здравствуйте.
Подскажите, пожалуйста, как оставить в списке только повторяющиеся элементы? Код data Library = Book String String | Newspaper String Int Int Int | Journal String Int Int deriving (Show, Eq) getAuthorss :: [Library] -> [String] findEq :: [String] -> String -> [String] findEq [] x = [x] findEq (x:xs) y = x:findEq xs y getAuthorss [] = [] getAuthorss ((Book _ _):xs) = getAuthorss xs getAuthorss ((Newspaper x _ _ _):xs) = findEq (getAuthorss xs) x getAuthorss ((Journal x _ _):xs) = findEq (getAuthorss xs) x тут мы получили список всех авторов, с повторами и без. а как теперь из списка удалить те, которые встречаются только 1 раз? (авторов книг учитывать по условию не нужно) |
Текстовая версия | 27.09.2024 14:06 |