Linguagens de Programação I

 

Denominação Estratégia ECTS
Linguagens de Programação I Teórica/prática e Prática laboratorial 7
Área científica: Ciências da Especialidade/Aplicadas
Objectivos de aprendizagem:

Esta unidade curricular pretende que os alunos consigam compreender e expressar-se algoritmicamente através da linguagem de programação C. Inicialmente os conceitos básicos da linguagem são introduzidos (cf. tipos de dados, operadores e expressões, estruturas de controlo, estruturação de funções, vectores, estruturas, apontadores e gestão de memória, etc.) de modo a que os alunos consigam analisar, compreender e desenvolver programas em C. Posteriormente, pretende-se que os alunos dominem a implementação de estruturas de dados lineares com recurso a apontadores (cf. pilhas, listas ligadas, etc.) e ficheiros (cf. texto e binários), bem como de mecanismos vulgarmente utilizadas na modelização e desenvolvimento de soluções concretas em C. Os alunos deverão ser capazes de compreender fluentemente qualquer programa em C e utilizar todas as potencialidades da linguagem para definir estruturas de dados e desenvolver os algoritmos necessários à resolução de múltiplos problemas de programação.

Síntese programática:

Introdução à programação em C
Estruturação dos programas em funções
Vectores e Strings
Apontadores
Estruturas de dados
Apontadores e estruturas de dados dinâmicas
Ficheiros
Conceitos avançados

Competências específicas adquiridas:

Ser capaz de:

– compreender a sintaxe e a semântica da linguagem C de modo a analisar, compreender e exprimir-se logaritmicamente através de programas em C;

– dominar os conceitos básicos da linguagem (tipos de dados, operadores e expressões, estruturas de controlo, estruturação dos programas em funções, vectores, estruturas, apontadores e gestão de memória) de modo a estruturar e desenvolver programas/software em C;

– saber ler, interpretar/compreender de forma fluente programas em C e utilizar todas as potencialidades da linguagem C para definir estruturas de dados e desenvolver os algoritmos necessários à resolução de múltiplos problemas de programação;

– dominar a modelação e implementação de estruturas de dados lineares dinâmicas com recurso a apontadores (pilhas e listas ligadas);

– conseguir compreender e utilizar as várias formas de persistência de dados disponíveis em C, através da utilização de ficheiros (de texto e binários).

Referências bibliográficas:

[1] L. Damas, Linguagem C, 10ª Edição, FCA, 1999.

[2] M. Sá, Fundamentos de Programação usando C, FCA, 2004.

[3] B. Kernighan & D. Ritchie, The C Programming Language, Prentice-Hall International, 1988.

[4] J. Tremblay & P. Sorensen, Introduction to Data Structures with Applications, McGraw-Hill, 1984.

[5] J. Vasconcelos & J. Carvalho, Algoritmia e Estruturas de Dados: Programação nas linguagens C e Java, Centro Atlântico, 2005.

Visualizar projetos: ISUS