Informática para Ciência e Tecnologia

Objetivos

Saber

As técnicas fundamentais do raciocínio computacional.

As construções essenciais de uma linguagem de programação (Python)

Noções fundamentais de gestão de dados.

Conceitos básicos relacionados com a Internet e a World Wide Web.

Saber Fazer

Decompor um problema em problemas mais simples.

Conceber programas para resolver problemas de manipulação, análise e visualização de informação no domínio do curso em que a UC é oferecida.

Testar um programa num determinado ambiente de programação.

Formular uma interrogação muito simples em SQL e aceder a recursos disponíveis na internet dentro de um programa.

Soft-Skills

Capacidade de concretização, capacidade de gestão do tempo e cumprimento dos prazos.


Caracterização geral

Código

12751

Créditos

6.0

Professor responsável

Hervé Miguel Cordeiro Paulino

Horas

Semanais - 4

Totais - 52

Idioma de ensino

Português

Pré-requisitos

Esta disciplina não tem pré-requisitos.

Bibliografia

Referências principais

Referências adicionais

  • Brian W. Kerninghan, Understanding the Digital World 2nd Ed, Princeton.University Press, 2017
  • Exploratory Programming for the Arts and Humanities, Nick Montfort 
  • Ernesto Costa. Programação em Python - Fundamentos e Resolução de Problemas, FCA, 2015

Método de ensino

Há duas horas de aulas teóricas e três horas de aulas práticas por semana.

As aulas teóricas são orientadas para a resolução de problemas. Começa-se com o enunciado de um problema muito concreto, que motiva a apresentação de um tópico dos sistemas de computadores, de um tipo de dados ou de uma construção da linguagem de programação, e termina-se com o código IGNOREe completo de um programa que o resolve.

Nas aulas práticas, os alunos concebem, implementam e testam programas que resolvem problemas simples das áreas das Ciências e Engenharias.

Método de avaliação

Componentes da Avaliação

A avaliação é constituída por duas componentes: a componente laboratorial e a componente teórico-prática. Todas as notas de trabalhos e das componentes são arredondadas às décimas.

Componente Laboratorial

A componente laboratorial é composta por um mini-trabalho (trab1) e um trabalho final (trab2). Os trabalhos são realizados em grupo (de dois alunos). Embora haja aulas práticas dedicadas aos trabalhos estes também devem ser realizados fora do período de aulas. A avaliação dos trabalhos inclui um teste para aferir o conhecimento que os alunos têm sobre o código entregue. A nota de cada elemento do grupo depende do trabalho entregue (realizado em grupo) e do desempenho (individual) nesse teste. Consequentemente, a nota dos dois elementos do grupo pode ser diferente.

A nota da componente laboratorial (CompL) é:

CompL = 0,4*trab1+0,6*trab2

Para obter frequência, é necessário que:

CompL >= 8

Componente Teórico-Prática

A componente teórico-prática é composta por dois testes ou por um exame (na Época de Recurso). Todas as provas são individuais, escritas e sem consulta.

A nota da componente teórico-prática (CompTP) é a média das notas dos testes (T1, T2 ) ou a nota do exame (Ex):

CompTP = (T1+T2)/2  ou   CompTP = Ex

Para obter aprovação, é necessário que:

CompTP >= 9

Nota Final

A nota final (F), tendo frequência, é:

  • F = CompTP,   se CompTP < 9 ;
  • F = 0.40 CompL + 0.60 CompTP

 

Classificações Obtidas em Anos Anteriore

São aceites as notas teórico-práticas e laboratorial dos anos letivos 2020-21 e 2021-22, se dentro do limite deste ano.

Caso obtenham notas também este ano, no cálculo da nota final, será usada a maior nota de cada componente.

Conteúdo

Introdução: Problemas, algoritmos, programas e computadores. Objetivos e componentes de um sistema computacional. Execução de programas. O interpretador.

Conceitos Fundamentais da Programação: Constantes, variáveis e expressões. Números e cadeias de caracteres (strings). Funções pré-definidas. Atribuição e sequência de instruções.

 Níveis de abstração na resolução de um problema. Funções. Ficheiros com código IGNOREe. Ciclo de vida de um programa. Tipos de erros. Testes unitários.

Ciclos FOR. Vetores. Instrução IF. Operadores relacionais e lógicos. Matrizes. Gráficos. Ciclos WHILE. Sistema de ficheiros. Ficheiros em binário e em ASCII. Estruturas. Vetores de estruturas.

Elementos de Análise de Dados

Introdução à gestão de dados: modelo relacional, relações, algumas instruções básicas de SQL.

A internet e a WWW.

Simulação de modelos contínuos.

Cursos

Cursos onde a unidade curricular é leccionada: