Programação

« Voltar

Objetivos

A disciplina de Programação tem por objectivo dotar os alunos com os conceitos básicos de programação procedimental em linguagens de alto nível. Pretende-se que os alunos adquiram os conceitos indispensáveis à resolução algorítmica de problemas, com especial enfâse nos que surgem habitualmente na área da Engenharia, estruturação de aplicações, e abstracção procedimental e de dados.

Programa

Introdução. Computadores e sistemas operativos. Algoritmos e linguagens de programação. Desenvolvimento, compilação e depuração de um programa. Noção de léxico, sintaxe e semântica. Conceitos elementares. Estrutura de um programa. Tipos de dados elementares. Operadores e expressões. Introdução às instruções de entrada/saída. Instruções de selecção. Instruções de controlo de fluxo. Programação estruturada. Funções. Variáveis globais e locais. Visibilidade e tempo de vida de uma variável. Modularidade e estruturação: divisão por ficheiros. Estruturas de dados. Vectores. Cadeias de caracteres. Vectores multidimensionais. Estruturas. Recursividade. Apontadores. Passagem de argumentos: valor e referência. Apontadores e arrays. Aritmética de apontadores. Ficheiros. Utilização de ficheiros. Ficheiros de texto. Estruturas de dados dinâmicas. Variáveis estática se dinâmicas. Noções de estruturas de dados dinâmicas: Pilhas; Filas; Listas simples e duplamente ligadas.

Métodos de ensino

As metodologias de ensino pretendem fomentar a aprendizagem baseada em resolução de problemas e por projectos, reforçando-se a componente prática, a aprendizagem, activa, o trabalho autónomo e a responsabilização do estudante. O modelo de avaliação incorpora elementos de avaliação contínua no âmbito da aprendizagem ativa (p. ex, projectos, trabalhos de casa, fichas, etc)compatível com a redução significativa do peso de avaliação por exames (≤50%).

Bibliografia

The C Programming Language - The ANSI edition, Brian W. Kernighan, Dennis M. Ritchie, 1988, Prentice-Hall; C Programming: AModern Approach, 2nd Edition, K. N. King, 2008, ; Introduction to Computation and Programming Using Python: With Application toUnderstanding Data Second Edition, John Guttag, 2016, MIT Press

Código

0104647

ECTS

6

Aulas

  • Práticas e Laboratórios - 21 horas
  • Teóricas - 28 horas

Método de Avaliação

  • Conforme Métodos de Ensino: 100%