nuno35 0 Posted April 2, 2019 Report Share Posted April 2, 2019 Boa tarde Tenho aqui um problema para o complicado de IO, vamos por partes portanto tenho de ir recebendo dados dos utilizadores e posso receber Texto, negrito ou Italico sempre que for um desses continua a receber quando for outra coisa qualquer para da a resposta que basicamente é fazer o putStrLn das coisas que recebi por exemplo se recebi Italico Negrito Texto tenho de fazer o putStrLn de Texto Negrito Italico Ora a minha ideia era fazer assim: receber :: IO() calculadora = do expressao <- getLine if expressao == ""Texto || expressao == "Negrito" || expressao == "Italico" then //Aqui a minha ideia era colocar a expressao numa lista masnao estou a ver como posso faze lo receber()//Chama outra vez a funçao else //Aqui escreve a lista que fui criando mas tenho muitas duvidas como e que posso fazer isto. Desde já Obrigado Link to post Share on other sites
pdfrod 12 Posted April 4, 2019 Report Share Posted April 4, 2019 Boas! Uma possiblidade é criar uma função auxiliar do seguinte estilo: calculadoraAux :: [String] -> IO () calculadoraAux expressoes = do expressao <- getLine if expressao == "Texto" || expressao == "Negrito" || expressao == "Italico" then ... // chamar calculadoraAux recursivamente, adicionando a expressao à lista de expressões else ... // escrever para a consola a lista 'expressoes', e chamar calculadoraAux recursivamente com uma nova lista Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now