-
Apresentação
Apresentação
A área da engenharia orienta-se, antes de mais, para a resolução de problemas. Por esse motivo faz todo o sentido formar os estudantes de engenharia na área da programação, conferindo-lhes as capacidades necessárias para resolver problemas com recurso a uma das ferramentas mais poderosas ao seu dispor - o computador. Áreas como a simulação, modelação e tratamento de dados fazem parde do dia a dia neste campo. É nesse contexto que esta UC se debruça sobre a questão da introdução à resolução de problemas com recurso a algoritmos implementados numa linguagem de programação de alto nível. Por outro lado, a linguagem C tem, historicamente, um papel muito importante na área da engenharia sendo essa a principal razão da sua escolha. Dado o seu sucesso, a linguagem C influenciou ainda um número significativo de outras linguagens de programação, pelo que a sua aprendisagem pode ainda ser valorizada na exploração dessas outras linguagens.
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Licenciado | Semestral | 5
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
1 | Obrigatório | Português
-
Código
Código
ULHT1706-7702
-
Pré-requisitos e co-requisitos
Pré-requisitos e co-requisitos
Não aplicável
-
Estágio Profissional
Estágio Profissional
Não
-
Conteúdos Programáticos
Conteúdos Programáticos
Conceitos Básicos Arquitetura computacional básica Algoritmos Linguagens de programação como forma de expressar algoritmos Programas Desenvolvimento de programas Etapas do desenvolvimento Ferramentas de desenvolvimento Ambientes de desenvolvimento integrados A linguagem de programação C Estrutura dos programas Elementos da linguagem Tipos, constantes e variáveis Expressões e atribuições Entradas e saídas na consola Programação estruturada Instruções de seleção Instruções de repetição Instrução composta Funções Visibilidade e tempo de vida das variáveis Vetores e Matrizes Cadeias de caracteres Apontadores Argumentos por valor e referência Entradas/saídas com ficheiros Estruturas Biblioteca de funções standard do C Programas em C Implementação de algoritmos simples Estrutura procedimental de um programa Metodologias de desenvolvimento
-
Objetivos
Objetivos
Compreender o conceito de algoritmo, nomeadamente quando aplicado à programação de computadores. Ter adquirido competências no domínio da conceção de algoritmos para a resolução de problemas de pequena e média complexidade. Ter aprendido os conceitos básicos associados à programação de computadores. Estar familiarizados com a linguagem de programação C e ter adquirido experiência prática na sua utilização para expressar algoritmos. Estar familiarizados com as ferramentas de desenvolvimento de e ter experiência de utilização de software em um ambiente de desenvolvimento integrado para a escrita, teste e depuração de programas. Entender a importância da documentação, estilo de escrita e, em geral, da adoção de convenções que garantam a legibilidade dos programas. Ter adquirido capacidades para a utilização duma linguagem de programação para a resolução de problemas específicos com recurso a um computador.
-
Metodologias de ensino
Metodologias de ensino
Utilização da metodolgia do questionamento, através de perguntas durante a aula para que os alunos entendam as vantagens e desvantagens da matéria estudada.
-
Bibliografia principal
Bibliografia principal
Robert C. Seacord (2020) Effective C: An Introduction to Professional C Programming. No Starch Press. Rocha, AA (2016) Introdução à Programação em C, 3ªEd., FCA. Deitel, H. and Deitel, P. (2012) C How to Program. 7th Ed, Prentice Hall. King, K.N. (2008) C Programming: A Modern Approach. 2nd Edition, W.W.Norton & Company. Marques de Sá, J. P. (2004) Fundamentos de Programação usando C, FCA. Kernighan, B. and Ritchie, D. (1988) The C Programming Language. 2nd Ed, Prentice Hall.
-
Avaliação
Avaliação
A nota de avaliação contínua corresponderá à média ponderada, arredondada para a decima, das notas dos testes escritos e dos trabalhos de acordo coma seguinte ponderação: 25% para cada trabalho prático (com um total de 2 trabalhos), 25% para cada teste (com um total de 2 testes). Caso o aluno não aprove nas frequências, haverá um Exame de recurso. Para obter aprovação na disciplina a nota mínima média dos testes é 9 valores e a nota mínima média dos trabalhos é 9 valores.
Trabalho de Laboratório 1: Pretende avaliar a interação com o utilizador através do teclado, assim como a resolução de problemas com estruturas condicionais e ciclos.
Trabalho de Laboratório 2: Pretende avaliar a definição de funções e a leitura e escrita de ficheiros de texto e binários.
-
Mobilidade
Mobilidade
Sim





