Jump to content

Search the Community

Showing results for tags 'haskell'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Comunidade
    • Sugestões, Críticas ou Dúvidas relativas ao P@P
    • Acerca do P@P
  • Comunidade a Trabalhar
    • Apresentação de Projectos de Programação
    • Downloads
    • Revista PROGRAMAR
  • Desenvolvimento Geral
    • C
    • C++
    • Java
    • Pascal
    • Python
    • Bases de Dados
    • Dispositivos Móveis
    • Outras Linguagens
  • Desenvolvimento Orientado para Web
    • PHP
    • HTML
    • CSS
    • Javascript
    • Outras Linguagens de WebDevelopment
    • Desenvolvimento Web
  • Desenvolvimento .NET
    • C#
    • Visual Basic .NET
    • ASP.NET
    • WPF & SilverLight
  • Software e Sistemas Operativos
    • Software de Produtividade
    • Sistemas Operativos
    • Apresentação de Software
  • Informática
    • Interfaces Visuais
    • Computação Gráfica
    • Algoritmia e Lógica
    • Segurança e Redes
    • Hardware
    • Electrónica e Automação Industrial
    • Matemática
    • Software de Contabilidade e Finanças
    • Dúvidas e Discussão de Programação
  • Outras Áreas
    • Notícias de Tecnologia
    • Dúvidas Gerais
    • Discussão Geral
    • Eventos
    • Anúncios de Emprego
    • Tutoriais
    • Snippets / Armazém de Código
  • Arquivo Morto
    • Projectos Descontinuados
    • System Empires

Blogs

  • Blog dos Moderadores
  • Eventos
  • Notícias de Tecnologia
  • Blog do Staff
  • Revista PROGRAMAR
  • Projectos
  • Wiki

Categories

  • Revista PROGRAMAR
  • Tutoriais
  • Textos Académicos
  • Exercícios Académicos
    • Exercícios c/ Solução
    • Exercícios s/ Solução
  • Bibliotecas e Aplicações
  • Outros

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

  1. tarefa :: [string] -> ?? tarefa l = let sepTabuleiro = init (init l) sepPosicao = last (init l) sepComandos = last l colunas = length (head l) testsoletras = todaslinhas sepTabuleiro 1 testNumColunas = numColunas sepTabuleiro colunas 1 testElemPosicao = if elemPosicao sepPosicao then 0 else length (init l) testCoordenadas = if coordenadas (head (sepPosicao)) colunas && coordenadas (head (drop 2 sepPosicao)) colunas then 0 else length (init l) testComandos = if tcomandos sepComandos then 0 else length
  2. oa Tarde, alguem me pode tentar exemplificar "justificar passo a passo" de como funciona esta função? (f) Considere a seguinte definicao f l = g [] l g l [] = l g l (h:t) = g (h:l) t Diga, justificando, qual ́e o valor de f "otrec" ?
  3. Boa Tarde, preciso de ajuda aqui em outro exercicio se alguem puder ajudar, recorrendo a recursividade fazer o seguinte :~ repetidos :: [int] -> Bool que testa se uma lista tem elementos repetidos. eu criei o seguinte codigo, mas não consigo verificar o head de uma lista com todos os elementos do resto da lista : repetidos :: [int]->Bool repetidos [] = False repetidos (h:t) = if h==(head t) then True else repetidos t Agradeço a ajuda
  4. Boa Tarde, Preciso aqui de uma ajudinha num exercicio de Haskell Objetivo da função : dar um numero inteiro de Minutos e devolver um tuplo de 2 elementos em horas exemplo : funcao 360 -> Resultado : (6,00) 6horas Não posso usar loops para este exercicio, não é um exercicio dificil mas não me estou a recordar como fazer isto sem loops, alguém para me ajudar? neste momento tenho : type Hora = (Int,Int) minutos_converter_horas :: Int->Hora minutos_converter_horas x = ????
  5. crislanio_macedo

    Testar funções sobre tipos algébricos

    data Exp a = Val a -- um numero | Neg (Exp a) -- o simetrico de uma expressao | Add (Exp a) (Exp a) -- a soma de duas expressoes | Sub (Exp a) (Exp a) -- subtraccao de duas expressoes | Mul (Exp a) (Exp a) -- multiplicacao ... | Div (Exp a) (Exp a) -- divisao ... avalia (Val x) = x avalia (Neg exp) = - (avalia exp) avalia (Add exp1 exp2) = (avalia exp1) + (avalia exp2) avalia (Sub exp1 exp2) = (avalia exp1) - (avalia exp2) avalia (Mul exp1 exp2) = (avalia exp1) * (avalia exp2) avalia (Div exp1 exp2) = (avalia exp1) / (avalia exp2) Como testaria esse código ? Como avaliar
  6. crislanio_macedo

    Produto

    Como faria uma função para entrar com o número de elementos e uma lista e retornar o total do produto desses elementos?
  7. Boas, tenho aqui um exercicio para resolver e preciso de uma pequena ajuda, esta função tem como objetivo dar uma lista, contar se o total de elementos nesta lista e impar ou par e caso seja impar devolve o primeiro elemento da lista, se for par devolve a propria lista, por isso o resultado pode ser um elemento ou uma lista. tendo : truncaImpar :: [a]->???? truncaImpar l = if(mod (length l) 2 == 0) then head l else l o que devo por em ????,
  8. barrinhos123!

    Funçao maoir de 3 inteiros

    Boas eu sou muito novo na programação em haskell e precisava de uma ajudinha neste exercício. O objectivo implementar uma função que retorne o maior de 3 valores , utilizando uma função que retorna o maior de 2 valores max2::(Int,Int) -> Int max2 (x,y) = if x < y then y else x max3::(Int,((Int,Int) -> Int)) -> Int max3 (a,(max2(x,y))) = if a < max2 then max2 else a não faço ideia como usar a função max2 dentro da função max3... obrigado
  9. joaomfs

    Reverse a Lista de inteiros

    Boas ao tentar fazer uma função em Haskell para fazer o reverse de uma lista de inteiros não entendo porque recebo erro ao compilar myreverse :: [int] -> [int] myreverse [] = [] myreverse (x:xs) = myreverse(xs) : x Aqui esta o erro
  10. alguém pode me ajudar com esse código para somar os elementos de duas listas, esse código funciona para duas listas de mesmo tamanho, porem quando passo listas de tamanho diferente no funciona por exemplo: [1, 4, 5, 6] e [3, 6] soma apenas os dois primeiro elementos erro: ([4,10*** Exception: /home/luis/workspace/Respostas/src/Main.hs:(110,1)-(113,58): Non-exhaustive patterns in function soma2listas]) soma2listas :: [int]->[int]->[int] soma2listas [] [] = [] soma2listas (a:b) (c:d) | (a:b) /= [] && (c:d) == [] = a : soma2listas b d | (a:b) == [] && (c:d) /= [] = c
  11. Alguém poderia me ajudar com essa lista? Já fiz 3 questões, mas essas não consigo. Este exemplo modifica o anterior, fazendo com que o usuário, não precise conhecer a sintaxe da função. Este exemplo imprime todos os números pares entre dois números(entre 0 e 100 por ex), na primeira função em ordem crescente e na segunda em ordem decrescente. Neste exemplo dado um número calcula o fatorial, também foram implementadas duas funções. Este exemplo possui uma função que devolve se um elemento pertence ou não a uma lista. Neste exemplo foram implementadas três funções: Uma função que devolve
  12. Boa noite, gostaria de saber se alguém me podia ajudar para poder manipular strings num ficheiro txt. Eu queria alterar e procurar valores num ficheiro txt, mas não sei como, numa lista constante é simples, mas neste caso não faço a mínima ideia. Por isso aqui fica a estrutura do meu programa: type Nome=String type Formula=String type Quantidade=Int type Estado=String type Substancia = (Nome,Formula,Quantidade,Estado) type ListaSubstancias=[substancia] adicionaSub::IO() adicionaSub=do putStr "Nome da substancia: " ns<-getLine putStr "Formula: " fo<-getLine putS
  13. crislanio_macedo

    Stack com instancias

    Como fazer para que a saída do código fique, como pilha de altura ____ e topo ___ dá o seguinte erro. Expecting one more argument to `Stack' In the instance declaration for `Show Stack' Failed, modules loaded: none. Me ajudem pois eu não sei manipular instancias. --import Stack --nao importa.. module Stack (Stack, top, mStack, isEmpty) where data Stack a = Stk [a] deriving (Read, Eq, Ord, Show) -- | Empty | Top a | (Stack a) deriving (Show) top (Stk (x:xs)) = x top _ = error "Stack.top: Pilha vazia" mStack :: [a] -> Stack a mStack xs = foldr push empty xs isEmpty :: S
  14. crislanio_macedo

    Como faço para dada a função sortListDates

    Olá pessoal como eu faria para que na função sortListDates gera-se datas aleatórias uma saída seria, 12 de Janeiro de 2019! Bom como faria para que seleccionasse aleatoriamente os dias meses e anos e gerasse a saída ? desde já grato, pela ajuda ! 👍 module Calendar (Cal, calendario, calendario_mes, semana,meses) where import Data.Time.Calendar as C -- funções de calendário import Data.Time.Calendar.WeekDate import Data.List as L data Cal a= Q[a] deriving (Read, Eq, Ord, Show) -- calendário de um mês calendario_mes y m =titulo where titulo = show y ++ "
  15. crislanio_macedo

    Instancias das classes Maybe, Enum, Bounded

    Olá Pessoal para fazer instância de uma classe têm-se que instanciar uma 'coisa' obrigatória dessa classe, exemplo para instanciar a classe Show tem que ter uma instância de show. Mas estou em ter muitas dificuldades em saber o que é obrigatório de cada classe e o que é para se fazer ? Uns exemplos são das classes Bounded, Enum e Maybe como proceder com as instâncias dessas classes ? Alguém teria algum tutorial de como fazer instâncias desses classes que possa ajudar ?
  16. crislanio_macedo

    Função randomRIO de System.Random

    Este é um exemplo simples, mas que não está a dá certo. Alguém poderia ajudar-me a corrigi o problema? Prelude> :l random.hs [1 of 1] Compiling Main ( random.hs, interpreted ) random.hs:7:1: Parse error: naked expression at top level Failed, modules loaded: none. Prelude> Estou a ter dificuldades no que refere a usar a função randomRIO. import qualified System.Random as R main :: IO () main = do n <- R.randomRIO (1, 5); putStrLn $ "Este é o valor aleatório: " ++ show n
  17. crislanio_macedo

    Manipulação de Números complexos?

    Modulo em Haskell para se trabalhar com números complexos? Algo do tipo : Complex : Representa números complexos e seus respectivos operadores aritméticos Exemplo de saída: 10.0 + 4.2j Qual seria algumas funções simples para manipula-los.?
  18. Olá pessoal como faria para começar a instanciar Pessoa de forma que eu organizasse por critério. Dado o construtor de critério como segue em anexo ? -- pessoa -- import qualified Data.Map as Map -- import qualified Data.List as L data Pessoa = { nome :: String , idade :: Int , salario :: Float } data Criterio = ByNome | ByIdade | BySalario -- classifica lista de pessoa por critério sortListPessoa :: [Pessoa] -> Criterio -> [Pessoa] instance Show Pessoa *Main> "cris is "++show cris "cris is Pessoa {nome = \"Cris\", idade = 19, salario = 4707.0}" *Main> cris Pessoa {nome = "Cri
  19. crislanio_macedo

    Como converter qualquer tipo em String ?

    Olá pessoal existe em Haskell algum tipo que faça conversão de qualquer tipo em String?
  20. Olá pessoal, sou novo aqui no Fórum (por isso peço compreensão quanto qualquer erro que cometi). Preciso de ajuda com um trabalho de faculdade. O professor viajou e deixou um trabalho de 10 questões para se criar programas na plataforma Haskell e salvar com a extensão ".hs". Até aqui tudo bem, eu consegui criar três programas, mas os outros eu não sei como fazer, já procurei comandos para usar e etc. Até agora só me restou visitar esse Fórum! Ajudem porfavor! PROGRAMAS EXEMPLOS DO PARADIGMA FUNCIONAL Este exemplo possui as seguintes funções: quadrado, a qual devolve o quadrado de um nú
  21. Boa tarde, preciso de uma ajuda rápida, tenho teste de haskell e nos testes dos anos anteriores saem perguntas assim: indique o tipo mais geral da funcao length Pelo que percebo o prof está a pedir é enum. Isto está certo? Precisava de uma resposta relativamente rapida, visto estar proximo do teste. Desde já obrigado, Fpinto.
  22. crislanio_macedo

    funções que não fazem parte do prelude

    De que maneira posso usar uma função que não está definida no padrão preludio em haskell, no prompt... ? têm alguma forma? grato
  23. Olá, pessoal. Estava a tentar resolver o problema 463 do Project Euler, e implementei o código que mostro no final. O problema é que, sempre que tento executar, tenho um problema: demora muito tempo, e excede a memória ao testar no Ideone. Como podem ver, testei a função f para n=100, e obtive 3.96s de execução e o seguinte erro: "prog: out of memory (requested 1048576 bytes)". Sinceramente não consigo determinar o problema. Espero que possam ter uma pista acerca do possível problema deste código. Cumprimentos. f 1 = 1 f 3 = 3 f n | n `elem` c2 = let x = extract2 n
  24. Como fazer para pegar os indices da maior permutação gerada? no caso a função add adiciona um valor a lista somando esse valor a cada indice da lista a função listacc recebe uma lista e soma o 1° valor da lista a cada valor da lista. Eu queria uma forma de retornar por exemplo a listacc [1,2,3,4] retorna [1,3,6,10] neste exemplo o maior valor gerado foi o 10 que fio gerado através de todos os valores somados, queria ao inves de retornar o 10 retornasse os índices que geraram este valor ! Ex: para *Main> listacc [-1,-2,3,-4] [-1,-3,0,-4] retornaria somente uma lista que foi gerada
  25. crislanio_macedo

    Haskell: proxima permutação

    nextPerm INPUT : Lista u de elementos ordenáveis. O UTPUT : Próxima permutação lexicográfica de u ou lançar exceção se não for possível. A próxima permutação lexicográfica de uma lista u de elemen- tos ordenáveis é obtida aplicando-se o seguinte al- goritmo,
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.