Conhecimentos de Base Recomendados
A disciplina não requer nenhum tipo de conhecimento base.
Métodos de Ensino
Nas aulas teóricas, os conceitos fundamentais serão apresentados e explorados, com recurso a exercícios e problemas que facilitem a sua compreensão e aplicação prática.
Nas aulas práticas, será dado ênfase à utilização do compilador e à resolução de exercícios e problemas diretamente no computador, permitindo aos alunos consolidar os conhecimentos através da prática de programação.
Resultados de Aprendizagem
Objetivos: Desenvolver competências para analisar e resolver problemas de forma estruturada, implementando as soluções através de codificação em linguagem de programação C.
Competências:
Pretende-se que os alunos adquiram competências nas seguintes áreas:
a) Conhecimento e compreensão na resolução de problemas: Ser capazes de analisar um problema, identificar os dados de entrada e saída, e explorar diferentes alternativas para a sua resolução;
b) Domínio da linguagem de programação C: Conceber e implementar programas funcionais, demonstrando o conhecimento necessário para resolver problemas concretos com a linguagem C;
c) Justificação na tomada de decisões: Ser capazes de tomar decisões fundamentadas nas opções de programação em C, de forma a garantir que os programas são claros, eficientes e funcionais;
d) Comunicação: Elaborar documentação clara e estruturada sobre os trabalhos práticos, justificando as principais decisões e abordagens adotadas no desenvolvimento dos programas;
e) Autonomia e autoaprendizagem: Desenvolver a capacidade de trabalhar de forma autónoma e em grupo, promovendo a aprendizagem contínua e a resolução de problemas novos, tanto na programação como na análise de problemas.
Programa
Conteúdos Programáticos:
1. Desenvolvimento de programas: dados, resultados, estratégia, algoritmos, pseudocódigo, fluxogramas;
2. Compilador e estrutura de um programa em C;
3. Programas sequenciais: variáveis, constantes, tipos de dados, operações, entrada/saída;
4. Estruturas de decisões (if…else/switch);
5. Estruturas de repetição: ciclos (while, for, do….while);
6. Funções e estrutura de um programa (duração e visibilidade variáveis, bibliotecas pré-definidas);
7. Arrays e Strings (básico, strings, bidimensionais);
8. Structs e definição de tipos de dados;
9. Ficheiros (binários, texto).
Métodos de Avaliação
A avaliação da UC será feita através de dois testes e um trabalho prático. A aprovação do aluno por avaliação contínua ficará condicionada ao cumprimento dos seguintes requisitos:
a) Frequência a pelo menos 75% das horas totais da unidade curricular como previsto no Regulamento CTeSPs - Artigo 23º Ponto 1;
b) Média mínima de 8 valores, na escala de 0-20 valores, nas classificações dos dois testes;
c) Um mínimo de 7 valores, na escala de 0-20 valores, nas classificações de cada um dos testes e do trabalho prático;
d) Um mínimo de 9,5 valores, na escala de 0-20 valores, na “Classificação final da UC”, calculada através da seguinte expressão: Classificação final da UC = 0,4 * Teste 1 + 0,4 * Teste 2 + 0,2 * Trabalho.
Estágio(s)
NAO
Bibliografia
– Damas, L. (n.d.). Linguagem C. FCA – Editora de Informática. ISBN 972-722-156-4
– Apontamentos das aulas teóricas e práticas.