| Código | 9099 | 
                        
                            | Ano | 2 | 
                        
                            | Semestre | S1 | 
                        
                            | Créditos ECTS | 6 | 
                        
                            | Carga Horária | PL(30H)/T(30H) | 
                        
                            | Área Científica | Informática | 
                        
                        
	| Tipo de ensino | Presencial. | 
                        
	| Estágios | Não aplicável. | 
                        
                        
	| Objectivos de Aprendizagem | Os objetivos desta unidade curricular são: - Introduzir os conceitos básicos de programação procedimental;
 - Contribuir para o desenvolvimento do pensamento abstracto através da resolução de problemas em computador.
 - Desenvolver capacidades de programação com recurso à linguagem C.
 No final da UC o aluno deverá ser capaz de:
 - Resolver problemas com recurso ao computador;
 - Conceber e programar algoritmos em linguagem C.
 | 
                        
                        
                        
                        
                        
	| Conteúdos programáticos | 1-Introdução à programação em C 2-Tipos de dados básicos
 3-Testes e condições
 4-Ciclos
 5-Funções
 6-Vetores
 7-Strings
 8-Apontadores
 9-Passagem de parâmetros
 10-Ficheiros
 11-Estruturas
 | 
                        
                        
                        
                        
	| Metodologias de Ensino e Critérios de Avaliação | Provas Escritas (PE) - 60% da nota final: PE = 0,3xP1 + 0,3xP2. Fichas de exercícios (FE) - 40% da nota final: FE= 0,2xFE1 + 0,2xFE2.
 
 O aluno deverá obter o mínimo de 9.5 em cada uma das componentes, PE e FE, para a provação à unidade curricular.
 Classificação (C) = 0,3xP1 + 0,3xP2 + 0,2xFE1 + 0,2FE2.  O(a) aluno(a) é aprovado(a) caso obtenha uma classificação superior ou igual a 9.5 durante o período ensino-aprendizagem. Em caso de aprovação, a classificação final (CF) é o número inteiro mais próximo de C, ou seja: Se C >= 9,5, então Aprovado com CF = arredondar (C). Em caso de aprovação no período ensino-aprendizagem, o(a) aluno(a) é dispensado de exame, embora possa ir melhorar a sua classificação final em exame.
 CF < 5,5 (em 20) => Reprovado e Não Admitido a Exame
 CF >= 9,5 (em 20) => Aprovado e Dispensado de Exame
 - Restantes casos => Reprovado e Admitido a Exame
 
 Exame (60%) + 40%(relativo às fichas de exercícios realizadas durante período lectivo).
 
 | 
                        
                        
                        
                        
	| Bibliografia principal | P. Darnell e P. Margolis. C: a software engineering approach. Springer-Verlag, NY, USA, 1996. L. Damas. Linguagem C. FCA - Editora de Informática, 1999.
 B. Forouzan e R. Gilberg. Computer Science: a structured programming approach using C.. PWS Publishing Company, 1997.
 B. Kerningham e R. Pike. The Unix programming environment.. Prentice-Hall, Inc., 1984.
 S. Bourne. The Unix System.. International Computer Science Series, Addison-Wesley Publishing Company, Inc., Wokingham, England, 1983.
 J. Hayes. Computer architecture and organization.. McGraw-Hill, 1998.
 
 | 
                        
                        
                        
                        
                        
                        
                            | Língua | Português |