Programming Methods I
1
2025-2026
01001179
Computation
Portuguese
Face-to-face
SEMESTRIAL
7.5
Compulsory
1st Cycle Studies
Recommended Prerequisites
Knowledge of proposicional logic at high-school Mathematics level.
Teaching Methods
Theoretical-practical classes of expository style by the professor with the presentation of theoretical aspects and examples. In practical classes students are asked to write programs on paper and to implement them on computers guided by the professor.
Learning Outcomes
Learning the basic mode of operation of a digital computer (von Neumann model), how information can be represented in such a model and the practical implications of its limitations.
Learning to program in an environment of an imperative language.
Apprehend the structured and descent programming paradigm, i.e., it is intended to strengthen the algorithmic deductive reasoning, by seeing a program as a method of automatic resolution of a given problem.
The main competencies to be developed are: ability to use computational tools; ability for generalization and abstraction; ability to formulate and to solve problems; logical argument; critical spirit; calculation skills; knowledge of mathematical results; rigorous and clear written and oral expressions; individual initiative; communication skills.
Work Placement(s)
NoSyllabus
1. Basic structure and operation of a digital computer: the con Neumann model; computation representation of numerical and non-numerical data.
2. Algorithms and programs: programming as structured problem solving.
3. Introduction to imperative programming (in C): elementary data types, variables and constants, arithmetic and logical, expressions. Control structures in imperative programming: sequence, decision, selection and loops. Tables and registers, and the basic operations on their static representations. File manipulation.
4. Programming methodology: modular and descent development of programs - Functions and parameter passing.
5. Introduction to recursive programming.
6. Sorting and its computational relevance.
Head Lecturer(s)
Sílvia Alexandra Alves Barbeiro
Assessment Methods
Continuous assessment
Resolution Problems: 20.0%
Frequency: 80.0%
Final assessment
Resolution Problems: 20.0%
Exam: 80.0%
Bibliography
Kernighan, Brian, & Ritchie, Dennis. 1988. The C Programming Language. 2nd edn. Prentice Hall.
J. Tremblay, J. Dedourex, R. Bunt, Introduction to Computer Science -an Algorithmic Approach., 2ed, McGraw-Hill, 1988.
Pedro Quaresma, Métodos de Programação I, DMUC, 2015.
R. G. Dromey, How to solve it by computer, Prentice-Hall, 1982.