Programação I

Métodos de Ensino

Nesta unidade curricular são utilizadas as seguintes metodologias de ensino:

1 – Método expositivo: método explicativo onde fundamentos teóricos e conceitos são apresentados pelo professor e discutidos com a turma, seguido de exemplos demonstrativos;

2 – Método experimental: método activo onde o aluno desenvolve o conhecimento através da resolução problemas e o desenvolvimento de projectos laboratoriais individuais ou em dinâmica de grupo.

No que diz respeito à avaliação, estão previstos os seguintes métodos:

1 – Avaliação Periódica: a) dois testes escritos (50%); b) trabalhos práticos semanais (25%); c) um trabalho prático final (25%);

2 – Avaliação Final: a) um exame (50%); b) um trabalho prático (50%);

Existe um valor mínimo de 40% para cada componente da avaliação periódica e final.

Resultados de Aprendizagem

No final da unidade curricular o aluno deverá ficar habilitado a:

1) Identificar e classificar os diferentes tipos de linguagens de programação;

2) Construir soluções recorrendo a algoritmos, fluxogramas e pseudo-código;

3) Listar as principais caracteristicas da linguagem C;

4) Ilustrar e demonstrar em código os diferentes tipos de dados, testes, condições e ciclos disponíveis na linguagem C;

5) Explicar o papel das funções e criar programas que demonstrem a sua utilização, nomeadamente o processo de passagem de parâmetros;

6) Demonstrar a criação e utilização de vectores e strings recorrendo a código;

7) Listar e usar no desenvolvimento de aplicações as operações de leitura e escrita em ficheiros ;

8) Planear e construir programas em linguagem C. Identificar e analisar os erros resultantes da construção de um programa.  Modificar programas em C de forma a corrigir erros ou adoptar novas especificações.

Programa

1) Linguagens de programação: introdução, caracterização e classificação;

2) Introdução à algoritmia: fluxogramas e pseudo-código;

3) Caracteristicas da linguagem de programação em C;

4) Tipos de dados (inteiros, reais, caracteres): declaração, inicialização e aritmética;

5) Testes e Condições: operadores relacionais e lógicos, intruções if…else e switch;

6) Ciclos: while, for, do…while;

7) Funções: variáveis locais, passagem de parâmetros por valor, por referência e através da linha de comando;

8) Vectores: declaração, inicialização, vectores multidimensionais. Strings: declaração, inicialização, leitura e escrita (printf, puts, scanf, gets);

9) Ficheiros: tipos de streams, operações (abertura, leitura, escrita, fecho), ficheiros standard (stdin, stout, stderr);

10) Pré-processador. 

Docente(s) responsável(eis)

Métodos de Avaliação

Avaliação por Exame
  • - Trabalho - 25.0%
  • - Prova escrita - 75.0%
Avaliação Periódica
  • - Fichas e participação nas aulas - 25.0%
  • - Provas escritas - 50.0%
  • - Trabalho prático - 25.0%

Estágio(s)

NAO

Bibliografia

Greg Perry, “C Programming Absolute Beginner’s Guide”,  3rd edition, 2013

K. N. King, “C Programming: A Modern Approach”, 2nd Edition,  W. W. Norton & Company, 2008

Luís Damas, “Linguagem C”, 24ª edição, FCA, 1999

Jens Gustedt, “Modern C”, Manning Publications, 2019

Cisco Academy, “CLA: Programming Essentials in C”, 2019