Faculdade de Ciências e Tecnologia

Métodos Computacionais

Código

11574

Unidade Orgânica

Faculdade de Ciências e Tecnologia

Departamento

Departamento de Informática

Créditos

9.0

Professor responsável

Joaquim Francisco Ferreira da Silva, Pedro Manuel Corrêa Calvente Barahona

Horas semanais

3

Total de horas

54

Língua de ensino

Inglês

Objectivos

Saber

As construções essenciais de uma linguagem de programação imperativa.

As ferramentas de um ambiente de desenvolvimento de software.

Algumas noções fundamentais de bases de dados relacionais.

Saber Fazer

Decompor um problema em problemas mais simples.

Conceber um algoritmo e um programa (numa lingiuagem imperativa) para resolver um problema simples.

Testar um programa num determinado ambiente de programação.

Desenhar uma base de dados relacional simples.

Formular uma interrogação muito simples em SQL.

Soft-Skills

Capacidade de concretização de um programa /base de dados.

Capacidade de gestão do tempo e cumprimento dos prazos.

Conteúdo

1. Introdução ao MATLAB
   a. Tipos de Dados Básicos
      • Numéricos, booleanos, caracteres
   b. Estruturas de dados
      • Matrizes (vetores, matrizes e matrizes múltiplas)
      • Texto
      • Estruturas
   c. Operações Básicas
      • Expressões numéricas
      • Operações sobre matrizes (em MATLAB)
      • Scripts
 2. Programação (Imperativa)
   a. Controle de Programas
      • Execução Sequencial
      • Execução condicional (Se)
      • Ciclos (Para, Enquanto)
   b. Funções
      Funções imbricadas e recursivas
   C. Entrada-Saída
      • Sistemas de operação e tipos de ficheiros
      • Ficheiros de texto (leitura / escrita)
      • Processamento de texto básico
3. Algoritmos
   a. Pesquisa em Vectores
      • Sequenciais (vetores não ordenados)
      • Bipartida (vetores ordenados)
      • Análise de complexidade
   b. Algoritmos de ordenação
      • Ordenação por Bolha, Inserção, Rápida e Mistura
      • Correção e Complexidade
   c. Simulação
      • Variáveis e processos ​​aleatórios
      • Autómatos (estado e transições)
   d. Algoritmos de grafos
      • Teste de Conectividade
      • Árvores de Cobertura Mínimas (Prim)
      • Distâncias mais curtas (Floyd-Wrashall)
      • Correção e Complexidade
4. Introdução às Bases de Dados
   a. Bases de dados relacionais
      •    Evolução e Aplicações
   b. Modelação e Desenho
      •    Entidades, Atributos e Chaves
      •    Modelo Entidade-Relação
      •    Álgebra Relacional (breve introdução)
   c. Normalização
      •    Dependências funcionais
      •    Fechos
      •    Formas Normais
   d. Consultas a Bases de Dados Relacionais
      •    SQL - Structured Query Language (DDL e DML)
      •    Consultas: Junções; funções de agregação e Views
      •    Consistência; Triggers


Bibliografia

   - Allen B. Downey, Physical Modeling in MATLAB.
   - ??? Bases de Dados ???

Método de ensino

Todas as semanas é leccionada uma hora de aulas teóricas  e uma aula laboratóral teórico-prática de uma hora e meia.

As aulas teóricas são orientadas por problemas. Começando com um problema concreto, que motiva a apresentação de algum tópico de programação, tipo de dados, algoritmos ou bases de dados, termina com a especificação de um programa que o resolve.

Nas aulas de laboratório, os alunos projetam, implementam e testam programas relacionados com a aula teórica anterior.

Método de avaliação

Avaliação Contínua

A Avaliação Continua é feita através de 2 projectos e testes.

Os primeiros teste e projecto  (T1 and P1) cobrem os tópicos  de Programação, Estruturas de Dados e Algoritmia.;

Os segundos teste e projecto (T2 and P2) cobrem o tópico de Bases de Dados.


Notas


A nota da avaliação contínua, Nac, é a média aritmética das notas teórica e prática (na escala de 0 to 20)


Nac = (NT + NP) / 2



A nota teórica, NT, é a média ponderada das notas dos testes T1 e T2:



NT = (2 * T1 + T2) / 3



A nota prática, NP, é a média ponderada das notas dos projectos, P1 e P2.



NP = (2 * P1 + P2) / 3



Aprovação



Um aluno com nota positica de avaliação contínua (Nac> = 9.5) obtem aprovação com uma nota final (Nf) igual à Nac, arredondada às unidades.


Frequência
Um aluno obtém frequência se a sua nota prática  (após arredondadmento) exceder 8 valores, i.e. se  NP> = 7.5.

Exame


Os alunos sem aprovação na avaliação contínua, mas tendo obtido frequência, podem fazer um exame final. O exame tem duas partes, E1 and E2, correspondendo aos testes T1 e T2, podendo ser feita apenas uma das partes.
A nota teórica após o exam, NTe,  é a média ponderada dos máximos das notas dos testes e das partes do exame correspondentes.


Nte = (2 * max (T1, E1) + 2 * max (T2, E2) / 3



A nota final após o exame, Nf, é a média aritmética das notas teórica e prática.



Nf = (Nte + NP) / 2



Os alunos que tenham obtido aprovação na avaliação contínua podem melhora a sua nota final através do exame. A sua nota final é obtida de acordo com as mesmas regras.

 

 
Alterado: Pedro Manuel Corrêa Calvente Barahona Em: 2016-12-27 17:47

 

27 de Dezembro de 2016 CLIP - 2016 17:58:25

Cursos