notas finais Versão de 21/12
Se vc tirou 0.1 no projeto 3 é porque ele não rodou. Eu testei com o seguinte arquivo. Entre em contato comigo se vc detectar que ha algum erro trivial no seu programa e que fazendo essa pequena mudança ele rodaria.
A maioria dos alunos errou a tarefa 12 e 13. Na tarefa 12 era para normalizar apenas as colunas cujo primeiro elemento era negativo, ou seja precisava vaser uma indexação com booleanos. Na tarefa 13, o objetivo era obter a entrada (por linha) que tivesse o menor valor absoluto e nao o menor valor absoluto em si. Precisava usar o argmin
e não o min
ou amin
Nenhum dos alunos com nota abaixo de 5.0 fez o número minimo de tarefas para fazer o exame.
A ultima aula será a aula de funções Numpy do dia 10/12
Há duas tarefas a serem submetidas, ambas para 4a feira da semana que vem 16/12.
As aulas serão sincronas nos seguintes horarios:
3a: das 16h as 18h
5a: das 16h as 18h
Eu vou tentar limitar a duração das aulas a no maximo 60 minutos, ou seja muito provavelmente as aulas serão das 16 as 17 horas. A gravação das aulas ficara disponível logo após a aula.
As aulas serão via google meet: https://meet.google.com/azk-tbag-gqo
dia 17/9 as 16 horas.
O objetivo da disciplina é apresentar ao aluno linguagens de programação que diferem de forma significativa das linguagens que ele já conhece, Python, C e Java. Estas linguagens apresentam um conjunto de conceitos (também chamado de paradigmas) que vão expandir as formas com que um programador pode pensar na solução para um problema.
A disciplina abordará as seguintes linguagens de programação, nesta ordem:
Haskell, particularmente a implementação GHC 8.X para a parte de linguagens funcionais.
Prolog, mais especificamente a implementação SWI-Prolog, para a parte de linguagens lógicas.
Alguns tópicos avançados em Python (versão 3.7 ou maior). Embora Python não seja por si só um exemplo de um novo paradigma de programação, ela nos permitirá discutir outros conceitos de programação em uma linguagem imperativa/tradicional. A disciplina assume que o aluno já sabe Python básico.
Breves conceitos sobre algumas linguagens recentes como Go e Rust (linguagens que substituem C), Scala e Julia (linguagens no nivel de abstração de Python), e talvez Lisp ou Closure, e ML ou F# (versões menos estritas de linguagens funcionais).
Haverá 12 ou mais testes. Cada teste recebe as notas 0 se há mais de um erro ou um erro mais serio, 1 se há apenas um erro de menor impacto, e 2 se não há erros.
Os testes serão postados nas 3a ferias e o aluno tem 24 horas para submeter a sua resposta (provavelmente via Susy).
Haverá ainda 3 projetos a serem entregues provavelmente via Susy ou via email. Os projetos terão notas entre 0 e 1, proporcional ao número de testes corretamente executados. Os projetos poderão ser feitos em grupos de até 3 pessoas.
A nota final será a (soma das 8 maiores notas dos testes e as notas dos 3 projetos com peso 4) tudo dividido por 2.8
final = (8 melhores testes + 4*(soma dos 3 projetos))/2.8
Não há substitutiva para os testes e os projetos não poderão ser entregues atrasados.
Alunos que tiverem feito pelo menos 6 testes e tiverem uma nota final entre 2.5 e 4.9 poderão fazer o exame. O exame devera ser feito em 24 horas e submetido via email.
(segundo email da coordenacao de graduação)
Adequação de matrícula: 08/09 a 11/09/2020
Alteração de matrícula 2s2020: 16 a 18/09
DAC divulga relatório de matrícula na WEB: 23/09
Início das aulas 2s2020: 16/09/2020
Término das aulas 2s2020: 19/01/2021
Último dia para para solicitação de desistência de matrícula em disciplinas: 19/11/2020
Último dia para realizar trancamento do 2s2020: 11/12/2020
Avaliação e Discussão dos Cursos: 25/11/2020
Semana de estudos: não haverá
Exames finais do 2º período letivo de 2020 e Turmas Especiais I e II: 20 a 26/01/2021
Submeta um arquivo de texto qq com qualquer conteúdo via susy em https://susy.ic.unicamp.br:9999/mc346a/00
Tarefa 1 Ate meia noite de 30/9. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/01
Tarefa 2 Ate meia noite de 7/10. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/02
Tarefa 3 Ate meia noite de 14/10. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/03
Tarefa 4 Ate meia noite de 21/10. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/04
Tarefa 5 Ate meia noite de 31/10. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/05
Tarefa 6 Ate meia noite de 5/11. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/06
Tarefa 7 Ate meia noite de 11/11. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/07
Tarefa 8 Ate meia noite de 19/11. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/08
Tarefa 9 Ate meia noite de 25/11. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/09
Tarefa 10 Ate meia noite de 02/12. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/10
Tarefa 11 Ate meia noite de 04/12. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/11
Tarefa 12 Ate meia noite de 16/12. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/12
Tarefa 13 Ate meia noite de 16/12. submissão via susy em https://susy.ic.unicamp.br:9999/mc346a/13
projeto 1 - haskell VERSÃO 3 - discute um exemplo de entrada e saída. Até o dia 29/10. Pode ser feito em grupos de ate 3 pessoas.
projeto 2 - prolog VERSÃO 1. Até o dia 26/11. Pode ser feito em grupos de até 3 pessoas. Submissão via susy
projeto 3 - python VERSÃO 1. Até o dia 14/12. Pode ser feito em grupos de até 3 pessoas. Submissão via susy
Livro texto: Learn you a Haskell for greater good
Uma lista de recursos para aprender Haskell
usaremos o SWI Prolog versão 8.X