1.  19/9: Apresentação
  2.  20/9: Ambiente de desenvolvimento; IDEs. Computadores, algoritmos e programas
  3.  21/9: Sintaxe e semântica
  4.  22/9: Expressões. Tipos elementares de dados. Nomes e atribuição
  5.  23/9: Predicados e condições. Comunicação com o exterior
  6.  26/9: Programas. Sequenciação. Seleção.
  7.  27/9: Repetição. Programas simples.
  8.  28/9: Funções. Ambiente de execução. Abstração procedimental.
  9.  29/9: Erros. Módulos.
  10.  30/9: Visualização e execução de programas. Depuração. Exemplos.
  11.   3/10: Tuplos.
  12.   4/10: Ciclos contados.
  13.   6/10: Cadeias de carateres revisitadas.
  14.   7/10: Métodos e formatação strings.
  15. 10/10: Listas. Passagem de parâmetros.
  16. 11/10: Listas. O crivo de Eratóstenes.
  17. 12/10: Listas. Algoritmos de procura e ordenação.
  18. 13/10: Dicionários.
  19. 14/10: Exercícios sobre dicionários (mesmos slides da aula anterior).
  20. 17/10: Discussão do 1º projeto.
  21. 18/10: Abstração de dados.
  22. 19/10: Metodologia TADs.
  23. 20/10: Programacao funcional.
  24. 21/10: Recursão.
  25. 24/10: Recursão de cauda.
  26. 25/10: Recursão em árvore.
  27. 26/10: Funções Lambda.
  28. 27/10: Funcionais sobre listas.
  29. 28/10: Funções como valor.
  30. 31/10: Ficheiros.
  31.   2/11: Tratamento de exceções em Python. Classes. Módulos.
  32.   3/11: Discussão do 2º projeto.