Departamento de Informática (UM)

Página de Unidade Curricular 🇬🇧

DesignaçãoCódigoCursoRegimeRegente

Laboratório de Algoritmia I

9695 [8502T5]

Licenciatura em Ciências da Computação [CCOM]

S2

Rui Manuel Ribeiro Castro Mendes

Objetivos

Esta UC visa integrar e complementar com trabalho de natureza laboratorial os conhecimentos e competências que estão a ser adquiridos pelos estudantes em outras UCs do mesmo semestre curricular. Mais concretamente, com base no que estão a aprender em outras UCs, os estudantes desenvolvem, em grupo, um projeto de programação numa linguagem imperativa.

Programa

1. Variáveis.
2. Instruções condicionais e cíclicas.
3. Vetores e matrizes.
4. Funções.
5. Input/Output.
6. Ordenação.
7. Estruturas de dados dinâmicos (listas, stacks, queres, árvores binárias de procura).
8. Monitorização e otimização de código.

Bibliografia

Kernighan, B., Ritchie, D. (1988). The C Programming Language (ANSI C) (2nd ed.). Prentice Hall Software series.

Guerreiro, P. (2001). Elementos de Programação com C (2nd ed.). FCA-Editora de Informática Lda, série Tecnologias de Informação.

Resultados da aprendizagem

- Codificar algoritmos e estruturas de dados numa linguagem de programação imperativa;
- Gerar, executar e testar programas codificados em C, usando um conjunto adequado de utilitários;
- Analisar a execução de programas numa dada arquitetura, e as aptidões de desenvolver e aplicar testes de conformidade em situações de fronteira;
- Analisar código em linguagem "assembly" e utilizar ferramentas de depuração de programas;
- Descrever, aplicar e avaliar técnicas de optimização de desempenho;
- Desenvolver algoritmos para resolver problemas;
- Trabalhar em equipa.

Método de avaliação

A avaliação é efetuada em várias etapas ao longo do desenvolvimento do projeto. Em cada atividade, o projeto é avaliado para verificar se cumpre os requisitos funcionais propostos no enunciado sendo também avaliados itens como a legibilidade do código produzido, a sua documentação e a sua eficiência.

Funcionamento

Turno: PL 1; Docente: Rui Manuel Ribeiro Castro Mendes; Dep.: DI; Horas: 30.
Turno: PL 2; Docente: Paulo Jorge Sousa Azevedo; Dep.: DI; Horas: 30.
Turno: PL 3; Docente: Francisco Supino Marcondes; Dep.: DI; Horas: 30.

[ Outras UCs do Departamento ]