Publicação em Diário da República: Aviso nº 909/2016 - 27/01/2016
5 ECTS; 1º Ano, 1º Semestre, 67,50 TP , Cód. 60244.
Docente(s)
- António Manuel Rodrigues Manso (2)
(1) Docente Responsável
(2) Docente que lecciona
Pré-requisitos
Não aplicável
Objetivos
1 - Compreender o funcionamento interno dos computadores e a sua programação
2 - Desenhar e implementar algoritmos para resolução de problemas
3 - Utilizar programação estruturada
4 - Desenvolver a capacidade de abstracção, raciocínio e concentração
Programa
1 - Introdução aos computadores e aos algoritmos
- Noções básicas de arquitectura de computadores
- Noção de algoritmo
- Algoritmos não computacionais
2 - Tipos de dados simples e expressões computacionais
- Representação da informação
- Bases de numeração
- Operadores aritméticos e lógicos e funções matemáticas
- Representação linear de expressões matemáticas
3 - Instruções de processamento sequencial
- Entrada e saída de dados
- Cálculo numérico
4 - Instruções de decisão condicional
- Expressões lógicas
- Decisão binária
- Decisão múltipla
5 - Instruções de iteração
- Iteração determinística
- Iteração condicional
- Iteração com controlo final
6 - Programação modular
- Funções e procedimentos
- Parâmetros
- Recursividade
7 - Vetores e matrizes
- Definição, inicialização, leitura e escrita de vetores
- Algoritmos de ordenação
- Algoritmos de pesquisa
- Matrizes
- Algoritmos com matrizes
8 - Estruturas de dados simples
- Pilhas
- Filas
Metodologia de avaliação
Desempenho laboratorial : 10%
Testes práticos : 50%
Exame teórico : 40 %
Bibliografia
- Cormen, T. e Leiserson, C. e Rivest, R. e Stein, C. (2009). Introduction to Algorithms, 3rd edition. (pp. 1-1000). MIT Press: MIT Press
Método de Ensino
Aulas expositivas para apresentação e demonstração dos conteúdos programáticos. Aulas práticas para implementação e validação dos conceitos teóricos através da resolução de pequenos exercícios.
Software utilizado nas aulas
Algorithmi - Sistema de ensino e aprendizagem de algoritmos