De regresso se o personagem está em uma lista ou não, sem o uso do elém de função e recursão

0

Pergunta

Eu tenho que fazer o elementIsInList :: Eq a => a -> [a] -> Bool função que deve se comportar da mesma maneira que o elem função de comportar-se-ia, mas eu não posso usar a recursividade e, claro, o elem função em si mesma. Eu pensei sobre como implementar isso usando o filter função, mas eu não consigo descobrir como filter de obras. Estou no caminho certo?

elementIsInList x xs = filter(x==xs) xs

haskell higher-order-functions list
2021-11-13 14:55:45
1

Melhor resposta

2

x == xs não faz muito sentido, x é um elemento a procurar, considerando que xs é a lista completa de elementos. Você pode fazer uso de uma expressão lambda:

filter (\x -> x == y) xs

ou de um operador infixo seção:

filter (x ==) xs

Além disso, você precisa verificar se a lista está vazia. null :: Foldable f => f a -> Bool vai voltar True se a lista é vazia, e False se ele não é. Em seguida, terá de anular o resultado com not :: Bool -> Bool.

2021-11-13 15:00:22

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................