Programming Methods II
2
2024-2025
01001214
Computation
Portuguese
Face-to-face
SEMESTRIAL
7.5
Compulsory
1st Cycle Studies
Recommended Prerequisites
Programming Methods I.
Teaching Methods
The pedagogical model used is based on three types of activities:
2 Types of classes:
• Lessons for the presentation and discussion of the syllabus
• Lessons for the application of concepts – programming problems
Group work (2 students) for the carrying out of work, which require a high student involvement.
Learning Outcomes
Specific skills: consolidation of knowledge in computer programming; acquisition of fundamental knowledge about the software development process and its effect on the final result; acquiring knowledge on structured and dynamic types, including lists, queues, stacks, trees and graphs; understanding of data structures and algorithms that efficiently serve several purposes in the structured resolution of problems.
Generic skills: ability to model problems; competence in using computational tools; develop algorithms and programming using high-level languagess, in particular C; capacity of generalization and abstraction; specify requirements and data structures; writing and oral rigorous and clear; ability to work in team; imagination and creativity; critical thinking.
Work Placement(s)
NoSyllabus
1. Software Development
1.1 Development methodologies
1.2 Development phases: Specification, Conception, Implementation, Testing, Validation, Maintenance
2. Predefined and dynamic data structures
2.1 Declaration, initialization and access
2.2 Pointers and their use
2.3 Dynamic Memory Management
3. Stacks and Queues
3.1 Basic operations with stacks and queues
4. Linked lists
4.1 Basic linked lists, doubly linked lists and circular linked lists
4.2 Basic operations with linked lists
5. Trees
5.1 Binary trees and binary search trees
5.2 Basic operations with trees
6. Graphs
6.1 Basic operations with graphs
Head Lecturer(s)
Pedro Henrique e Figueiredo Quaresma de Almeida
Assessment Methods
Continuous assessment
Resolution Problems: 40.0%
Frequency: 60.0%
Final assessment
Resolution Problems: 40.0%
Exam: 60.0%
Bibliography
Rocha, António Adrego, Estruturas de Dados e Algoritmos em C, FCA, 2014.
Guerreiro, Pedro, Elementos de Programação com C, FCA, 2012.
Baase, Sara & Gelder, A. Van, Computer algorithms: an introduction to design and analysis, Addison-Wesley, 2000.
Kernighan, B.W., The C programming language, Prentice Hall, 1988.
Sedgewick, R., Algorithms in C, Addison-Wesley, 2000.
José Carlos Teixeira, Métodos de Programação II, DMUC, 2016.