problema: https://www.hackerrank.com/challenges/find-digits import Data.Char import Control.Monad intDigits :: Integer -> [Int] intDigits n = map (\x -> read [x] :: Int) (show n) charDigits :: [Int] -> [Char] charDigits = map (\x -> intToDigit x) digits :: Integer -> [Char] digits = charDigits . intDigits divide :: Integer -> Char -> Bool divide _ '0' = False divide n c = isMultiple where digit = toInteger $ digitToInt c nModDigit = n `mod` digit isMultiple = nModDigit == 0 findDigit :: Integer -> Int findDigit n = foldl (\a b -> a + (if div b then 1 else 0)) 0 list where div = divide n list = digits n getStrings :: Integer -> [IO String] getStrings n | n <= 0 = [] | otherwise = getLine : getStrings (n - 1) getIntegers :: [String] -> [Integer] getIntegers [] = [] getIntegers (x:xs) = readInteger x : getIntegers xs readInteger :: String -> Integer readInteger = read main = do qtd <- getLine valStr <- sequence $ getStrings (readInteger qtd) let valores = getIntegers valStr digitsFound = map (findDigit) valores mapM (print) digitsFound Em 4 de janeiro de 2015 17:41, Jean Lopes <hawu.bnu@gmail.com> escreveu:
Legal esse site, finalmente consegui resolver o primeiro de lógica em Haskell! tive bastante trabalho com a parte de IO (não sabia nada ainda, agora sei quase nada kk) tive que pesquisar também sobre como transformar um número em string.. pelo que vi da pra melhorar bastante ainda! alguem tem dicas ?? segue o código
Em 29 de dezembro de 2014 21:14, Luis Fernando Milano Oliveira < luismilanooliveira@gmail.com> escreveu:
Legal, Sérgio!
Eu não conhecia não, valeu pela dica!
[ ] s
Em 29 de dezembro de 2014 18:19, Sergio costa <skosta@gmail.com> escreveu:
sim, por isso achei legal :) quase não passava em estrutura de dados,
rs...
Em 29 de dezembro de 2014 17:02, Rafael Barros Félix < rafaelbfs1@gmail.com> escreveu:
sim
um entrevistador da Inglaterra até me mandou tarefas desse site. E eu descobri que eu sei bem menos do haskell do que eu achava
Em 29 de dezembro de 2014 16:26, Sergio costa <skosta@gmail.com> escreveu:
Prezados
Conhecem este site ? Tem diversos desafios em programação funcional.
abs -- Prof. Sérgio Souza Costa https://sites.google.com/site/skosta/
_______________________________________________ haskell-br mailing list haskell-br@haskell.org http://www.haskell.org/mailman/listinfo/haskell-br
_______________________________________________ haskell-br mailing list haskell-br@haskell.org http://www.haskell.org/mailman/listinfo/haskell-br
-- Prof. Sérgio Souza Costa https://sites.google.com/site/skosta/
_______________________________________________ haskell-br mailing list haskell-br@haskell.org http://www.haskell.org/mailman/listinfo/haskell-br
_______________________________________________ haskell-br mailing list haskell-br@haskell.org http://www.haskell.org/mailman/listinfo/haskell-br