Go to:
Esta página em português Ajuda Autenticar-se
Projecto da Casa da U. Porto
You are here: Start > EEC0009

Site map
Edifício A (Administração) Edifício B (Aulas) - Bloco I Edifício B (Aulas) - Bloco II Edifício B (Aulas) - Bloco III Edifício B (Aulas) - Bloco IV Edifício C (Biblioteca) Edifício D (CICA) Edifício E (Química) Edifício F (Minas e Metalurgia) Edifício F (Minas e Metalurgia) Edifício G (Civil) Edifício H (Civil) Edifício I (Electrotecnia) Edifício J (Electrotecnia) Edifício K (Pavilhão FCNAUP) Edifício L (Mecânica) Edifício M (Mecânica) Edifício N (Garagem) Edifício O (Cafetaria) Edifício P (Cantina) Edifício Q (Central de Gases) Edifício R (Laboratório de Engenharia do Ambiente) Edifício S (INESC) Edifício T (Torre do INEGI) Edifício U (Nave do INEGI) Edifício X (Associação de Estudantes)

Programming 2

Code: EEC0009     Acronym: PROG2

Classification Keyword
OFICIAL Computer Science

Instance: 2011/2012 - 2S

Active? Yes
E-learning page: http://moodle.fe.up.pt/
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Master in Electrical and Computers Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
MIEEC 474 Syllabus (Transition) since 2010/2011 1 - 7 77 189
Syllabus 1 - 7 77 189

Teaching Staff - Responsibilities

Teacher Responsibility
Luís Filipe Pinto de Almeida Teixeira

Teaching language



By the end of this course unit the students should:
- be able to develop programs in C, applying strategies for choosing appropriate data structures and algorithms;
- be able to apply application development methodologies and techniques;
- know implementation strategies for linear data structures, binary trees and dispersion tables;
- know the characteristics of good algorithms;
- be able to apply search and sorting algorithms.


1. Programming in C and Development Methodologies
* Review of basic concepts of C programming
* Separate code compilation using auxiliary tools
* Development and usage of function libraries
* Debugging techniques
2. Low-level programming
* Representation of data in memory
* Memory management
* Passing arguments to functions
* Basics about Assembly programming
3. Fundamentals about algorithms
* Complexity of algorithms
* Strategies for the development of algorithms
* Search and sorting algorithms
* Practical examples of the applications of different strategies
4. Data structures
* Linear data structures - lists, queues and stacks
* Hash tables
* Trees
* Heaps

Mandatory literature

P. J. Deitel, H. M. Deitel; C. ISBN: 978-0-13-705966-9
Mark Allen Weiss; Data structures and algorithm analysis in C. ISBN: 0-201-49840-5

Complementary Bibliography

Robert Sedgewick; Algorithms in C. ISBN: 0-201-31452-5
Luís Damas; Linguagem C. ISBN: 972-722-156-4

Teaching methods and learning activities

Theoretical classes are used to present the course contents and discuss small application examples.
The practical classes will be used to solve problems and develop, test and analyze programs that involve the algorithms and data structures studied in theoretical classes.
Students will develop a set of assignments, subject to evaluation, during specific practical classes, which can be concluded outside class.


Microsoft Visual Studio em Windows


Physical sciences > Computer science > Programming

Evaluation Type

Distributed evaluation without final exam

Assessment Components

Description Type Time (hours) Weight (%) End date
Attendance (estimated) Participação presencial 65,00
Additional follow-up Participação presencial 24,00
Exams Exame 3,00
Total: - 0,00

Amount of time allocated to each course unit

Description Type Time (hours) End date
Study during the semeste Estudo autónomo 97
Total: 97,00

Eligibility for exams

The frequency classification includes two components: individual performance and evaluation of the practical assignments. The minimum of this component to obtain frequency is 50%.

Calculation formula of final grade

CF = 0,4 * F + 0,6 * MT

* Frequency classification (F)
F = 0,8 * TP + 0,2 * AC
TP – average classification of the practical assignments, where all assignments have the same weight.
AC – classification of the continuous evaluation component, which refers to the attendance and participation of the student in the theoretical and practical classes.

* Classification of the mini-tests (MT)
MT = 0,5 * MT1 + 0,5 * MT2
MT1,MT2 - classification of the 1st and 2nd mini-test
The final classification (CF) is only valid if the student obtains, at least 40% of the máximum possible classification of the MT component and 50% of the F component.

Special assessment (TE, DA, ...)

The global evaluation, in special seasons, consists of an exam with the duration of 2 hours, comprising a set of multiple choice questions and a set of C programming problems.
DA students are subject to the standard evaluation rules, like regular students.
Other students with special status (e.g. working students) may follow the standard evaluation rules, like regular students.
Recommend this page Top
Copyright 1996-2019 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2019-02-19 at 01:14:07