
Informatics for Science and Engineering E
Code
11149
Academic unit
Faculdade de Ciências e Tecnologia
Department
Departamento de Informática
Credits
6.0
Teacher in charge
Pedro Abílio Duarte de Medeiros
Weekly hours
5
Total hours
56
Teaching language
Português
Objectives
Knowledge
The fundamental components of a computer.
The tools of a software development system.
The essential constructions of an imperative programming language.
Some fundamental notions of relational databases.
Some basic concepts involved in the World Wide Web.
Application
Decompose a problem into simpler problems.
Design an algorithm for solving a simple problem.
Write a program, making a correct use of the basic constructions of an imperative programming language.
Test a program in a given programming environment.
State a very simple SQL query.
Access resources available in the network inside a program.
Soft-Skills
Ability to do a programming project.
Skills in time management.
Prerequisites
This unit has no access requirements.
Subject matter
Introduction: Problems, algorithms, programs, and computers. Goals and components of computer systems. Program execution. The interpreter.
Fundamental Concepts of Programming: Constants, variables and expressions. Numbers and strings. Predefined functions. Assignment statement and sequence of statements. Levels of abstraction in problem-solving. Functions. Source code files. Program life cycle. Kinds of error. Unit testing. FOR loops. Vectors. The IF statement. Relational and logical operators. Matrices. Graphics. WHILE loops. File systems. Binary and ASCII files. Structures. Vectors of structures.
Networks and communication protocols. The World Wide Web.
Introduction to databases: the relational model, relations, some basic SQL queries.
Bibliography
Main Reference:
Allen B. Downey. Physical Modeling in MATLAB (version 1.1.3). PDF file available at http://greenteapress.com/matlab/
Teaching method
Each week, there are two hours of lectures, a theoretical-practical session of one hour, and a lab session of two hours.
Lectures are problem-driven. They start with a concrete problem, which motivates the presentation of some computer systems topic, some data type or some programming language construct, and end with the complete source code of a program that solves it.
In the theoretical-practical session, a connection is made betwwen the lectures and the problems to be solved in the lab session. Students are motivated to design the programs that solve simple problems in Science and Engineering fields
In the lab classes, students design, implement and test programs for solving the proposed problems.
Evaluation method
Assessment Components
Assessment has two components: the laboratory component and the theoretical-practical component.
Laboratory Component
The laboratory component comprises the following two elements, to be developed by groups of two students.
- one programming assignment (mark EP)
- one programming project to be performed in a group of two students (mark TP)
The marks EP and TP will include a component that evaluates the knowledge about the code submitted; this will be assessed by a specific set of questions included in both tests.
The laboratory component grade (LComp) is obtained through the following formula where EP is the grade of the programming assignment and TP is the grade of the project
In order to succeed (and to have access to the exam), it is required that:
Theoretical-Practical Component
The theoretical-practical component comprises two tests (during class weeks) or a exam (after class weeks). The tests and the exam are written, individual and closed-book.
The theoretical-practical component grade (TPComp) is the weighted mean of the test grades (T1 and T2) or the exam grade (Ex):
In order to succeed, it is required that:
Final Grade
The final grade (F), defined only if LComp >= 8.0 , is:
- F = TPComp, if TPComp < 8.0;
- F = 0.4 LComp + 0.6 TPComp, if TPComp >= 8.0 .
All grades (EP1, EP2, TP, T1, T2, Ex, LComp, and TPComp) are rounded to the nearest tenth, except the final grade (F) which is rounded to the nearest whole number.