-
Presentation
Presentation
This course offers the first contact to a computer programming language. It provides the grounding for a discipline understanding of programming languages in general, covering topics common to most programming languages.
-
Class from course
Class from course
-
Degree | Semesters | ECTS
Degree | Semesters | ECTS
Bachelor | Semestral | 6
-
Year | Nature | Language
Year | Nature | Language
1 | Mandatory | Português
-
Code
Code
ULP452-7337
-
Prerequisites and corequisites
Prerequisites and corequisites
Not applicable
-
Professional Internship
Professional Internship
Não
-
Syllabus
Syllabus
- Introduction to programming
- Programming in the contexto of developing software projects
- Basic notions of algorithm, program, abstraction, syntax semantics, compiler/interpreter
- Programming paradigms: imperative, functional, logic and object-oriented
- Introduction to C programming
- Compilation process
- Using a programming editor (IDE).
- C language syntax
- Structuring a program
- Data types
- Order of evaluation of operators, unary operators, conversion between data types
- Basic communication with the user
- Control structures (Simple selection, alternative and multiple, while, do...while, for)
- Arrays and matrices manipulation
- Functions and procedures
- Passing arguments by value or by reference to a value
- Memory pointers
- Memory pointers and arrays
- Dynamic Memory allocation
- Handling text files and binara files
- Types and structured data (static and dynamic)
- Error management
- Introduction to programming
-
Objectives
Objectives
The main outcomes of this subject is to prepare the development of a computing program. This subject reinforces the importance of creating algorithms for the resolution of problems and subsequent coding in a programming language. To this end, the subject addresses techniques for data storage that support the development of a computing program in C language.
At the end of the course the student is capable of:
- Structuring a reasoning for a problem with small to medium complexity, scratch a solution, build an algorithm and implement it in C language, addressing the initial problem;
- Use the grounding rules of imperative/procedural programming design (in C language), namely structuring a program with functions and understanding the impact of passing arguments by value, processing arrays and more complex structures of data.
-
Teaching methodologies and assessment
Teaching methodologies and assessment
Theoretic classes are expository, always covering practical examples on the covered topics, in a way to provide full understanding of the topics.
Practical classes enable students to exercise and test the topics.
-
References
References
-
Damas, L. Sebenta Universidade Lusófona Humanidades e Tecnologias. Linguagem C. 10a. Edição, LTC, 2007
-
-
Office Hours
Office Hours
-
Mobility
Mobility
No