Haverá um exame opcional no dia 17/6 as 16h na sala de aula. O exame na semana de exames será no dia 13/7 as 16h. O aluno só pode fazer UM dos exames. Os exames terão 3 questoes de python, 2 de haskell, e 1 de prolog.
Se voce optar pelo exame do dia 13/7, voce precisa me informar via email até o dia 20/6.
O exame do dia 17/6 será com consulta. Eu informo sobre as regras do exame de 13/7 via email.
A discplina cobrirá em alguma profundidade 3 linguagens de programação: Python, Haskell e Prolog, com pesos relativos de 4, 2 e 1.
A nota final será (4 * nota_python + 2 * nota_haskell + nota_prolog)/7
As provas serão feitas em sala de aula, com duração de 1:30 min.
O Projeto de Haskell estara disponivel AQUI as 22:00 do dia 15/5. O projeto deve ser submetido via Susy, no site https://susy.ic.unicamp.br:9999/mc346a/02
Um aluno mencionou que nao existe o modulo Data.Map.Lazy no susy. Eu nao sei como confirmar isso, e se for verdade como instalar o modulo. Neste caso, se voce precisa de algo parecido com um dicionario, vc tera que implementa-lo como uma lista de tuplas (chave,valor). Nao tem nenhum problema que essa implementacao e' menos eficiente.
Na versao no Susy ate 11/04 as 1:45 havia um erro dificil de debugar. Eu ordenei os resultados pela distancia percorrida, que era calculada como um float. Mas em pelo menos um dos exercicios embora o caminho A,B,C,A e A,C,B,A tenham teoricamente a mesma distancia, as contas nao precisam dar o mesmo resultado em float. E nao estavam dando. A resposta com o menor caminho era incorretamente a segunda. A solucao é fazer a ordenacao nao com a distancia como um float, mas como um float ja arredondado para a primeira casadecimal.
Haverá uma prova de Python no dia 15/4, com peso 2
Haverá um trabalho prático, a ser entregue via Susy, em data a ser marcada, que pode ser feito individualmente ou em duplas. A nota do projeto tera peso 1. O projeto terá pouco tempo para ser submetido e portanto os alunos devem estar preparados para escrever programas de tamanho moderado em pouco tempo. Programas significativamente iguais entre si causarão a nota 0 no modulo de Python.
Recursos
Haverá uma prova de Haskell no dia 20/5, com peso 2
Haverá um trabalho prático, a ser entregue via Susy, em data a ser marcada, que pode ser feito individualmente ou em duplas. A nota do projeto tera peso 1. O projeto terá pouco tempo para ser submetido e portanto os alunos devem estar preparados para escrever programas de tamanho moderado em pouco tempo. Programas significativamente iguais entre si causarão a nota 0 no modulo de Haskell.
Recursos
Haverá apenas uma prova de Prolog no dia 10/6,
Recursos