Programação
2019-2020
AVISO: (16-fev-2020)
Notas de recurso:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (01-fev-2020)
Notas de exame:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (22-jan-2020)
3º teste e sua resolução.
AVISO: (13-jan-2020)
Notas finais de frequência:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (28-dez-2019)
Notas do 4º teste:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (24-dez-2019)
As notas finais só serão lançadas no dia 28 de dezembro.
AVISO: (08-dez-2019)
Notas do 3º teste:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: 06-dez-2019)
Na semana de aulas entre 9 a 13 de dezembro, os exercícios a apresentar e a resolver na aula prática serão 8.8, 8.9, 9.6 e 9.7.
AVISO: (4-dez-2019)
Para o 4º teste, os alunos terão de estudar os capítulos T10, T11, T12 e T13 e as folhas práticas P07, P08 e P09.
AVISO: (27-nov-2019)
Na semana de aulas entre 2 a 6 de dezembro, os exercícios da Folha 9 a apresentar e a resolver na aula prática serão 1, 2, 3, 4 e 5.
AVISO: (24-nov-2019)
Na semana de aulas entre 25 a 29 de novembro, os exercícios da Folha 8 a apresentar e a resolver na aula prática são os da semana passada mais o 6. Outros exercícios da Folha 8 serão resolvidos na aula teórica.
AVISO: (17-nov-2019)
Notas do 2º teste:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (14-nov-2019)
Na semana de aulas entre 18 a 22 de novembro, os exercícios da Folha 8 a apresentar e a resolver na aula prática são o 1, 2, 4 e 5. Os exercícios da Folha 7 são resolvidos na aula teórica.
AVISO: (14-nov-2019)
Para o 3º teste, os alunos terão de estudar os capítulos T07, T08, T09 e T10 e as folhas práticas P05 e P06.
AVISO: (10-nov-2019)
Na semana de aulas ente 11 a 15 de novembro, os exercícios da Folha 6 a apresentar e a resolver na aula prática são o 3, 4, 6 e 7.
AVISO: (10-nov-2019)
Na semana de aulas ente 11 a 15 de novembro, alguns dos exercícios da Folha 6 serão resolvidos na aula teórica.
AVISO: (10-nov-2019)
2º teste e sua resolução.
AVISO: (1-nov-2019)
Na semana de aulas ente 4 a 8 de novembro, os exercícios da Folha 5 a apresentar e a resolver na aula prática são o 5 e 7.
AVISO: (27-out-2019)
O 2º teste decorrerá nos anfiteatros 6.1 e 6.3.
AVISO: (27-out-2019)
Notas do 1º teste:
Eng. Informática;
Matemática e Aplicações;
Relações Internacionais.
AVISO: (24-out-2019)
Para o 2º teste, os alunos terão de estudar os capítulos T04 e T05 e as folhas práticas P03 e P04.
AVISO: (17-out-2019)
Na sexta semana de aulas (de 21 a 25 de outubro), os exercícios da Folha 4 a apresentar e a resolver na aula prática são o 19 e 20.
AVISO: (13-out-2019)
Como dito na aula anterior, os exercícios da Folha 4 a apresentar e a resolver na aula prática por 2 alunos na quinta semana de aulas (de 14 a 18 outubro) são o 10 e 11. A modelação do problema, o algoritmo e a programação serão cotadas para 4 valores.
AVISO: (8-out-2019)
1º teste e sua resolução.
AVISO: (3-out-2019)
Para o 1º teste, os alunos terão de estudar os capítulos T01 a T04 e as folhas práticas P01 a P03.
AVISO: (3-out-2019)
Os exercícios da Folha 3 a apresentar e a resolver na aula prática por 2 alunos na quarta semana de aulas (de 7 a 11 outubro) são o 11 e 12. A modelação do problema, o algoritmo e a programação serão cotadas para 4 valores.
AVISO: (23-set-2019)
Os exercícios da Folha 2 a apresentar e a resolver na aula prática por 2 alunos na terceira semana de aulas (de 30 de setembro a 4 de outubro) são o 6 e 7. A apresentação, a solução e a programação serão cotadas para 4 valores.
AVISO: (16-set-2019)
Instalação da Linux Bash Shell no Windows 10.
Informação complementar para a instalação da Linux Bash Shell no Windows 10.
AVISO: (16-set-2019)
Início das aulas a 16-set-2019.
Prof. Doutor Abel Gomes
Associate Professor
Gab. 3.26, Fase VI
Departamento of Informática
Universidade da Beira Interior
6200-001 Covilhã
PORTUGAL
agomes@di.ubi.pt
tel: +351 275 242 081
fax: +351 275 319 899
Associate Professor
Gab. 3.26, Fase VI
Departamento of Informática
Universidade da Beira Interior
6200-001 Covilhã
PORTUGAL
agomes@di.ubi.pt
tel: +351 275 242 081
fax: +351 275 319 899
Objectivos
Os objetivos gerais de aprendizagem são os seguintes:
- Perceber os fundamentos de programação para resolver problemas de natureza computacional usando computadores.
- Perceber como abstrair um problema concreto para a sua devida especificação/modelação e implementação na forma de um programa de computador.
- Introduzir os conceitos básicos de programação imperativa.
- Desenvolver capacidades de programação com recurso à linguagem C.
- Perceber e saber como corretamente integrar uma solução programática com as contingências arquitetónicas de um computador (e.g. aritmética de computador, gestão dinâmica do recurso memória).
- Aprendizagem das técnicas básicas de desenho e estruturação de algoritmos e programas.
- Modelar um problema passível de resolução computacional com o recurso de estruturas de dados.
- Desenvolver algoritmos básicos para solucionar problemas de natureza computacional.
- Dominar conceitos básicos de programação imperativa, implementar algoritmos com recurso à linguagem de programação C.
- Conhecer os tipos de dados simples e compostos, estruturas de decisão e repetição, conceitos de definição e utilização de subprogramas, recursividade, mecanismos de passagem de parâmetros, gestão dinâmica de memória, e controlo de fluxo de um programa.
- Adaptar uma implementação de um algoritmo por forma a lidar com as contingências arquitetónicas dos computadores.
Módulos Teóricos
- T00 : Planeamento do Processo de Ensino-Aprendizagem
- T01 : Fundamentos de Computadores
- ----- : Lecture 1: Introduction to C programming
- T02 : Fundamentos de Linguagens de Programação
- ----- : Lecture 2: Fundamentals of Programming Languages
- T03 : Tipos de Dados Simples
- ----- : Lecture 3: Basic Data Types
- T04 : Algoritmos e Programação Estruturada
- T05 : Fundamentos de Lógica
- T06 : Subprogramas I
- T07 : Arrays: Tipos de Dados Compostos I
- T08 : Endereçamento de Memória
- T09 : Subprogramas II
- T10 : Strings: Tipos de Dados Compostos II
- T11 : Structs: Tipos de Dados Compostos III
- T12 : I/O Files: Tipos de Dados Compostos IV
- T13 : Gestão Dinâmica da Memória
- T14 : Recursão
Módulos Práticos
- P01 : Introdução ao sistema operativo Unix
- P02 : Input / Output
- P03 : Expressões e Instruções
- P04 : Desenho de Algoritmos e Estruturas de Controlo
- P05 : Subprogramas
- P06 : Subprogramas e Arrays
- P07 : Subprogramas e Strings
- P08 : Subprogramas, Structs e Arrays de Structs
- P09 : Ficheiros e I/O
Testes de anos anteriores
- T1-4 : Testes 1-4 (2017-18)
- T1-4 : Testes 1-4 (2018-19)
- ---- : Resolução do 1º teste
- ---- : Resolução do 2º teste
- ---- : Resolução do 4º teste
Bibliografia
- P. Darnell e P. Margolis. C: a software engineering approach. Springer-Verlag, NY, USA, 1996 (existe na biblioteca).
- L. Damas. Linguagem C. FCA - Editora de Informática, 1999 (existe na biblioteca).
- J. Farrel. Programming Logic and Design. Thomson Learning, Inc., Boston, Massachusetts, USA.
- B. Forouzan e R. Gilberg. Computer Science: a structured programming approach using C.. PWS Publishing Company, 1997 (existe na biblioteca).
- A. Shiflet. Problem solving in C including breadth and laboratories. West Publishing Company, 1995.
- J. Garrot, J. Amador e J. Castro. UNIX: curso completo.. FCA - Editora de Informática, 1998.
- B. Kerningham e R. Pike. The Unix programming environment.. Prentice-Hall, Inc., 1984 (existe na biblioteca).
- S. Bourne. The Unix System.. International Computer Science Series, Addison-Wesley Publishing Company, Inc., Wokingham, England, 1983 (existe na biblioteca).
- J. Hayes. Computer architecture and organization.. McGraw-Hill, 1998 (existe na biblioteca).
Avaliação
Regras Gerais de Avaliação:
- 0º teste: 4.0 valores (data: todas as semanas nas aulas práticas): 2 alunos escolhidos aleatoriamente terão de apresentar aos colegas a resolução de 2 exercícios práticos, um por aluno.
- 1º teste: 4.0 valores (data: 07/out/2019, segunda-feira, 18:00, sala: 4.02)
- 2º teste: 4.0 valores (data: 28/out/2019, segunda-feira, 18:00, salas: 6.01 e 6.03)
- 3º teste: 4.0 valores (data: 18/nov/2019, segunda-feira, 18:00, salas: 6.01 e 6.03)
- 4º teste: 4.0 valores (data: 09/dez/2019, segunda-feira, 18:00, sala: 4.02)
- exame : 16.0+4.0 valores referentes aos testes anteriores (data: -- de janeiro de 2016)
- exame de recurso: 16.0+4.0 valores referentes aos testes anteriores (data: -- de fevereiro de 2016)
- Em qualquer dos dois exames, haverá também os testes 1, 2, 3 e 4, e os alunos poderão fazer quaisquer deles, mantendo as respetivas classificações à maior.
Não haverá limitações no acesso a cada teste.
Fontes de informação na web
- Cprogramming.com - Your Resource for C and C++ Programming.
- C Programming, by Steve Holmes.
- Programming in C, by A. D. Marshall.
- C Programming: a wiki.
- Programming in C, by Steve Summit.
- C Programming, by Brian Brown.
- How C Programming Works, by Marshall Brain.
Docentes e Horário de Atendimento
O atendimento requer marcação prévia via email com pelo menos 48 horas de antecedência.- Prof. Doutor Abel Gomes (agomes@di.ubi.pt,
Gab.3.26, DI, Fase 6, 2º Piso, ou IT (lab por cima do Anfiteatro 6.26)
- segunda-feira: 18:00-19:00
- terça-feira: 10:00-11:00
Last Update February 1, 2020