Programming Methods II

Year
2
Academic year
2024-2025
Code
01001214
Subject Area
Computation
Language of Instruction
Portuguese
Mode of Delivery
Face-to-face
Duration
SEMESTRIAL
ECTS Credits
7.5
Type
Compulsory
Level
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)

No

Syllabus

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.