IPT Logotipo do IPT

Engenharia Informática

Introdução à Programação e à Resolução de Problemas

<< voltar ao Plano Curricular

Publicação em Diário da República: Despacho n.º 8644/2020 - 08/09/2020

7 ECTS; 1º Ano, 1º Semestre, 42,0 PL + 28,0 TP , Cód. 911931.

Docente(s)
- Paulo Sérgio Correia Monteiro (2)
- António Manuel Rodrigues Manso (1)(2)

(1) Docente Responsável
(2) Docente que lecciona

Pré-requisitos
Não Aplicável

Objetivos
1) Conhecer e compreender os princípios da programação estruturada.
2) Projetar e analisar algoritmos para a resolução de problemas utilizando pseudocódigos e fluxogramas.
3) Implementar e testar algoritmos em linguagens de programação de alto nível.

Programa
1) Introdução aos algoritmos e à resolução de problemas.

2) Linguagens naturais e formais:
a- Linguagens naturais e linguagens formais
b- Pseudocódigos e fluxogramas.
c- Linguagens de programação.

3) Cálculo computacional e tipos de dados simples:
a- Definição de tipos de dados.
b- Operadores e funções.
c- Expressões computacionais.

4) Processamento sequencial:
a- Definição de variáveis.
b- Instruções de leitura de dados.
c- Instruções de cálculo computacional.
d- Instruções de escrita de informação.

5) Decisão condicional:
a- Operadores relacionais e operadores lógicos.
b- Instruções para decisões simples.
c- Instruções para decisões múltiplas.

6) Repetição e iteração:
a- Iteração de um conjunto de valores.
b- Repetição com condições iniciais.
c- Repetição com condições finais.
d- Instruções para alterar o fluxo de ciclos.

7) Modularização de programas:
a- Abordagem top-down para a resolução de problemas.
b- Funções e procedimentos.
c- Parâmetros e retorno de funções.
d- Recursividade.

8) Vetores e matrizes:
a- Definição e manipulação de conjuntos de dados.
b- Algoritmos de ordenação e pesquisa.
c- Definição e manipulação de matrizes.
d- Algoritmos sobre matrizes.

9) Programação numa linguagem de alto nível:
a- Introdução à programação em python.
b- Processamento de estruturas de dados simples.
c- Exploração de módulos e pacotes da linguagem.

Metodologia de avaliação
Avaliação prática: 50%
- Construção de um portefólio de algoritmos
- Resolução de testes práticos
- Nota mínima na avaliação prática: 10 valores em 20.
Avaliação teórica: 50%
- Teste teórico sem consulta.
- Nota mínima na avaliação teórica: 7 valores em 20.

Bibliografia
- Cormen, T. e Leiserson, C. e Rivest, R. e , . (2009). Introduction to Algorithms. USA: MIT Press
- Costa, E. (2015). Programação em Python - Fundamentos e Resolução de Problemas. Lisboa: FCA

Método de Ensino
Aulas expositivas para apresentação e demonstração dos conteúdos programáticos. Aulas práticas para implementação e validação dos conceitos teóricos através da resolução de pequenos exercícios.

Software utilizado nas aulas
Algorithmi
Pycharm
Plataforma de eLearning

 

Aprovado em Conselho Técnico Cientifico: 08 de novembro de 2023

Download da Ficha da Unidade Curricular (FUC)

 

 


<< voltar ao Plano Curricular
NP4552
Financiamento
KreativEu
erasmus
catedra
b-on
portugal2020
centro2020
compete2020
crusoe
fct
feder
fse
poch
portugal2030
poseur
prr
santander
republica
UE next generation
Centro 2030
Lisboa 2020
co-financiado