Faculdade de Ciências e Tecnologia

Informatics for Science and Engineering D

Code

11148

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

6.0

Teacher in charge

Jorge Carlos Ferreira Rodrigues da Cruz, Pedro Abílio Duarte de Medeiros

Weekly hours

5

Total hours

60

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.

Simulation of continuous models.

Bibliography

Main Reference:

  • Theory Slides
  • John V. Guttag. Introduction to Computation and Programming Using Python, MIT PRESS, 2016 (https://mitpress.mit.edu/books/introduction-computation-and-programming-using-python-second-edition)
Complementary References:
 
  • Allen B. Downey. Think Python: How to Think Like a Computer Scientist (version 2.0.17).      (Versão PDF disponível em http://greenteapress.com/wp/think-python-2e/)
  • Ernesto Costa. Programação em Python - Fundamentos e Resolução de Problemas, FCA, 2015

Courses