Cálculo de Programas

Mestrado Integrado em Engenharia Informática e Licenciatura em Ciências da Computação

Tópicos

Avisos

03 Ago - As notas dos exames da época especial estão publicadas em Alunos.

23 Jul - O exame da época especial (24-Jul) será na sala CP2 0.20, das 9h às 11h.

10 Jul - Consulta dos exames: amanhã das 11h às 13h, na sala de reuniões do 2º andar do DIUM.

10 Jul - As notas finais e dos TPs estão publicadas em Alunos.

25 Jun - O horário das defesas dos TPs está disponível nesta página. Cada defesa demora 15 minutos. Cada grupo deverá comparecer na sala indicada 5 mins antes da hora.

21 Jun - Horário para os alunos verem os testes: segunda-feira, dia 25-Jun, das 16h às 18h.

20 Jun - Afixadas as classificações do teste de 6-Jun em Alunos.

18 Jun - As defesas orais dos TP desta disciplina terão lugar de 3 a 5 de Julho. Oportunamente será divulgado o escalonamento dos grupos (gerado aleatoriamente).

17 Jun - Entrega dos TP: ver instruções em Alunos. Data limite: 23 de Junho.

31 Mai - Avisam-se os alunos que a data de submissão do TP desta disciplina foi adiada para sábado, 23 de Junho. Oportunamente serão dadas aqui as instruções para a entrega.

20 Mai - Publicada no Material a ficha nr.13 (última), a preparar para as aulas TP da semana de 21-Mai.

06 Mai - Publicada no Material a ficha nr.12, a preparar para as aulas TP da semana de 07-Mai.

06 Mai - Chama-se à atenção que a aula de reposição do turno MiEI/TP2 será não será no E1 mas sim na sala 1.03 do E2 - ver Sumários.

29 Abr - Publicada no Material a ficha nr.11, a preparar para as aulas TP da semana de 30-Abr.

22 Abr - Publicada no Material a ficha nr.10, a preparar para as aulas TP da semana de 23-Abr.

20 Abr - Trabalho prático: enunciado e material publicados em Material.

14 Abr - Publicada no Material a ficha nr.9, a preparar para as aulas TP da semana de 16-Abr.

09 Abr - Chama-se a atenção para a mudança de sala do turno MiEI/TP2, cf. Horário.

07 Abr - Publicada no Material a ficha nr.8, a preparar para as aulas TP da semana de 09-Abr.

03 Abr - A comunicação dos grupos de trabalho de CP deverá ser feita em http://www.di.uminho.pt/grupo_cp/ até dia 17 de Abril.

02 Abr - Publicada no Material a ficha nr.7, a preparar para as aulas TP da semana de 03-Abr.

17 Mar - Publicada no Material a ficha nr.6, a preparar para as aulas TP da semana de 19-Mar.

11 Mar - Publicada no Material a ficha nr.5, a preparar para as aulas TP da semana de 12-Mar.

03 Mar - Publicada no Material a ficha nr.4, a preparar para as aulas TP da semana de 05-Mar.

03 Mar - Notas TP de 16/17 - ver Alunos.

27 Fev - Aviso: não haverá aula LCC/TP2 esta sexta-feira, 2-Março. O docente combinará com os alunos deste turno uma aula de substituição.

24 Fev - Publicada no Material a ficha nr.3, a preparar para as aulas TP da semana de 26-Fev.

20 Fev - Chama-se a atenção para a mudança dos anfiteatros das aulas teóricas dos 2 cursos, cf. Horário.

17 Fev - Publicada no Material a ficha nr.2, a preparar para as aulas TP da semana de 19-Fev.

01 Fev - Início das aulas: semana de 12-Fev. Começarão primeiro as aulas TP com uma ficha de revisão de PF (Programação Funcional).

01 Fev - Criada esta página de avisos.

Horário de Atendimento

  • Em qualquer altura: via correio electrónico pressionando aqui. Qualquer outro meio de contacto será considerado informal, não se sentindo a equipa docente vinculada a dar uma resposta em tempo útil.

  • Durante o período de aulas: de acordo com o horário seguinte, sujeito a marcação verbal ou por email, com um mínimo de uma semana de antecedência, junto do respectivo docente:

Dia Hora Cursos Docente
2.ª-feira 13h00-15h00 MiEI O.M. Pacheco
3.ª-feira 15h00-16h00 MiEI/LCC J.N. Oliveira
3.ª-feira 18h00-20h00 MiEI/LCC J.N. Oliveira
4.ª-feira 16h00-17h00 MiEI/LCC J.M. Cunha
4.ª-feira 16h00-18h00 MiEI H. Pacheco
5.ª-feira 16h00-17h00 MiEI/LCC J.M. Cunha
5.ª-feira 18h00-20h00 MiEI/LCC J.N. Oliveira
6.ª-feira 14h00-15h00 MiEI O.M. Pacheco

Atendimento electrónico (FAQs) tinynew.gif

Q01 - Na questão 9 da ficha 4, não percebo o condicional p -> f, g . h. Não devia ser (p -> f,g). h?

R: Devia! Faltam os parênteses - gralha entretanto corrigida na nova versão dessa ficha.


Q02 - Estou a ter problemas ao correr o ficheiro cp1718t.lhs. O erro é o seguinte: "Could not find module ‘Data.Matrix’".

R: Isso significa que o módulo Data.Matrix não está instalado na sua máquina. Use cabal install (tal como se refere no enunciado) para o instalar.


Q03 - Não percebo o que faz a função depthQTree: para toda e qualquer QTree passada à função, esta devolve 0...

R: Há uma gralha: na definição da função (linha 1294) substituam maximum [a,b,c,d] por 1 + maximum [a,b,c,d] - relacionar com a questão 5 da ficha nrº 10. Já agora, como provariam que a função, tal como está, é a função constante 0?


Q04 tinynew.gif - No problema 3, não percebo o que está a fazer o 'n' em 's (d+1) = s n + 1'.

R: Trata-se infelizmente de outra gralha: no ficheiro lhs (linha 663) substituam n por d.


Q05 tinynew.gif - No problema 2, a função 'compressQTree :: Int -> QTree a -> QTree a' é mesmo polimórfica em 'a'?_

R: Sim, a implementação deverá ser polimórfica em 'a'.


Q06 - Faço o que diz o enunciado para instalar 'lhs2tex', cabal install lhs2tex, corre tudo bem, mas continuo sem ´lhs2tex', e.g. lhs2tex cp1718t.lhs > cp1718t.tex dá erro. (Isto em MAC OS.)

R: Se tudo correu bem na instalação, deverá existir o ficheiro executável Library/Haskell/bin/lhs2tex. O que está a faltar é o "link" para esse ficheiro. Uma maneira simples de o fazer é definir, na shell,

alias lhs2tex='/Users/user/Library/Haskell/bin/lhs2tex'

onde user é o nome do utilizador. Para não terem que fazer isso sempre, acrescentem essa linha ao ficheiro .bashrc, que já deve existir na directoria principal de user. (Este ficheiro é executado sempre que criam uma shell ou abrem um terminal.)


Q07 - Em Linux, cabal install JuicyPixels dá erro de instalação indicando que zlib-0.6.2 não foi instalada. Que fazer?

R: Basta correr o comando sudo apt-get install libz-dev em Linux e fica a funcionar. (Agradeçam ao vosso colega Pedro Mimoso Silva esta informação.)


Q08 - Estive a fazer testes unitários da minha solução do problema 3 do TP e aparentemente obtenho resultados correctos; no entanto, ao testar com o Quickcheck, a minha solução falha. Não consigo perceber onde está o erro...

R: O problema é que, como vem no enunciado, a solução calculada assume n < k, e o QuickCheck não sabe disso. Sugere-se o seguinte: no enunciado, onde aparece a prop3, substituam-na pela versão seguinte:

prop3 (NonNegative n) (NonNegative k) = k <= n ==> (bin n k) == (fac n) % (fac k * (fac ((n-k))))


Q09 tinynew.gif - Ao tentar correr a função animatePTree obtenho sempre este erro " ***Exception: user error (unknown GLUT entry glutInit)". Há alguma sujestão de como o resolver?

R: É conhecido que chamar o gloss dentro do ghci pode ter problemas. Para os resolver, basta invocar ghci com o argumento -fno-ghci-sandbox, ou compilar com o ghc. No segundo caso, definam uma função main = ... que chame a animação que querem fazer. Quando correrem, na shell, ./cp1718t, será essa função que será activada.


-- JoseNunoOliveira - 06 Mar 2018

r11 - 21 Jun 2018 - 11:09:29 - JoseNunoOliveira
This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. Ideas, requests, problems? Send feedback.
Syndicate this site RSSATOM