Fundamentos de Programação

Base Knowledge

n. a.

Teaching Methodologies

Theoretical classes include a professor’s exposition of topics and their applications, as well as active learning opportunities.

Throughout the semester, laboratory classes will have two formats:

– Problem-solving: discussion, analysis, and design of algorithms, followed by implementation in C;

– Project development: sessions based on Project-Based Learning (type: project exercise), in which the classwork contributes incrementally to the course project.

Learning Results

By the end of the course, the student should be able to:

1) Identify and classify the different types of programming languages;

2) Build solutions using algorithms, flowcharts and pseudo-code;

3) List the main characteristics of the C language;

4) Implement interaction with the user;

5) Illustrate and demonstrate in code the different types of data and control structures available in the C language;

6) Explain the role of functions and create programs that demonstrate their use, namely the process of passing parameters;

7) Create and use of vectors and strings;

8) List and use file reading and writing operations in application development;

9) Plan and build programs in C language;

10) Identify and analyse errors resulting from the construction of a program. Modify C programs to correct errors or adopt new specifications.

Program

1) Programming languages: introduction, characterisation and classification;

2) Introduction to algorithms: flowcharts and pseudocode;

3) Characteristics of the C programming language;

4) Data types; Declaration of variables and constants; Main operators; Expressions;

5) User Interaction;

6) Control structures: Sequence, Selection and Repetition;

7) Functions: local variables and passing parameters;

8) Vectors and strings: declaration, initialisation, manipulation. Multidimensional vectors;

9) Files: types of streams, operations, standard files.

Curricular Unit Teachers

Verónica Maria Marques do Carreiro Silva Vasconcelos

Grading Methods

Assessment:

- Written final exam to 12 values, with the minimum of 6 values (in 12 values).
- 1 group project for a total of 8 points, with a minimum of 4 points. The project will have a mandatory defense.
 

Students with marks above 17 must submit to an oral defence to maintain their marks. If the defence not succeeds, the mark will be capped at 17.

If the professor decides it is necessary, an oral test will confirm the final mark.

Conditions for Access to the Exam, valid for all exam calls:

- No more than two absences in laboratory classes.
- Obtain a minimum of 4 values in the project.

- Valid for all examination calls.


    Internship(s)

    NAO

    Bibliography

    Vasconcelos, V.,  Marques, L, (2012). Linguagem C – Textos de apoio., ISEC (disponível na secção de texto e site da Unidade Curricular)

     King, K. N. (2008). C Programming – A Modern Approach”, Norton & Company, 2nd Ed. (disponível no ISEC: 1A -1-374)

     Damas, L. (1999). Linguagem C. FCA – Editora de Informática. (disponível no ISEC: 1A -1- 458)

    Kochan, S. G. (2005). Programming in C. 3rd Ed. (disponível no ISEC: 1A-1- 165)

     Guerreiro P. (2006). Elementos de Programação com C. FCA – Editora de Informática, 3ª Ed (disponível no ISEC: 1A -1- 458)

     S., Herbert. (1998).  Teach Yourself C.  McGraw-Hill, 3rd Ed. (disponível no ISEC: 1A – 1 – 257 )