Lista vazia, Converter pra double e os três últimos exercícios da lista 2

27 views
Skip to first unread message

Elsio Antunes

unread,
Jun 22, 2019, 11:55:06 PM6/22/19
to haskell-brasil
atualizaCatalogo f = [(a, abs b, b<0) | (a, b) <- f]

Isso deveria resolver, e resolve quando eu uso o GHCi. Pela lógica, a compreensão de lista pega cada tupla da lista e monta uma tripla com a resposta. 
Mas se eu receber uma lista vazia, o que faço? Por que o GHCi aceita mas o Spec não aceita? Por que um erro num dos casos de um dos exercícios impede a compilação da lista toda?

Sobre conversão de Int pra Double, eu não faço ideia de como faz, os resultados do google são muito escassos e muito difíceis de entender. 

Emilio Francesquini

unread,
Jun 24, 2019, 8:11:28 AM6/24/19
to Elsio Antunes, haskell-brasil
Olá Elsio,


On Sun, Jun 23, 2019 at 12:55 AM Elsio Antunes <tks...@gmail.com> wrote:
atualizaCatalogo f = [(a, abs b, b<0) | (a, b) <- f]

Isso deveria resolver, e resolve quando eu uso o GHCi. Pela lógica, a compreensão de lista pega cada tupla da lista e monta uma tripla com a resposta. 
Mas se eu receber uma lista vazia, o que faço?

Quando f é uma lista vazia, atualiza f é também uma lista vazia.

 
Por que o GHCi aceita mas o Spec não aceita?

O ghci compila e executa o seu código. Ele não verifica saídas ou comportamento.
Estou supondo que o que você chama de Spec sejam os casos de teste. Os casos de teste verificam se o comportamento é o esperado, logo o seu código não está se comportando como esperado.
 
Por que um erro num dos casos de um dos exercícios impede a compilação da lista toda?

Não entendi a sua pergunta. Se um dos casos falhou invariavelmente a compilação ocorreu sem problemas. Se a compilação tivesse falhado nenhum dos casos teria nem sequer executado.

 
Sobre conversão de Int pra Double, eu não faço ideia de como faz, os resultados do google são muito escassos e muito difíceis de entender. 

Dê uma olhada na função fromIntegral

Até logo,

Emilio

PS. Note que esta lista inclui pessoas além da turma atual de Paradigmas da UFABC. Então é bem possível que você tenha mais sucesso em obter respostas às suas perguntas se explicar o problema em mais detalhes.
 

--
Você recebeu essa mensagem porque está inscrito no grupo "haskell-brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para haskell-brasi...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/haskell-brasil/99323aae-b852-4d0d-bdb0-e3966dbd234c%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages