Conteúdos da cadeira

Fundamentos da Programação

Algoritmos e programas em Python, desde variáveis e ciclos até recursão, programação funcional, ficheiros e exceções.

Markdown

Perguntar sobre esta página

ChatGPTClaudePerplexityGeminiCopiar e abrir

Envia o link e pede à IA para ler a página. No Gemini, cola a pergunta copiada.

Ver pergunta para copiar
Nesta página

FP é a cadeira onde aprendes a programar: pegar num problema, decompô-lo em passos precisos e escrever esses passos em Python de forma que o computador os execute e outra pessoa os consiga ler. Não é preciso experiência prévia; é preciso prática regular, com muitos programas pequenos escritos por ti.

Como está organizado

Começa por Primeiros programas, que fixa algoritmos, tipos, variáveis e expressões. Depois, Condições e ciclos mostra como o programa escolhe caminhos e repete trabalho, e Funções ensina a organizar o código em blocos reutilizáveis.

A segunda parte trata de dados compostos: Strings para texto, Tuplos e listas para sequências e Dicionários e conjuntos para associações e coleções sem repetições. Com estes materiais, Recursão resolve problemas decompondo-os em versões mais pequenas de si próprios.

A terceira parte muda o estilo de programar: Programação funcional usa map, filter e reduce, e Compreensões e geradores escreve transformações de sequências de forma compacta. Algoritmos e complexidade compara a pesquisa linear com a pesquisa binária e explica a notação Big-O. Por fim, Ficheiros e exceções guarda dados para além do fim do programa e trata os erros sem deixar o programa morrer.

Como estudar

Lê cada página com o computador ao lado e executa todos os exemplos. Em FP, perceber o exemplo com os olhos não chega: tens de o reescrever, mudar os valores e prever o resultado antes de correres. Quando o resultado for diferente do que esperavas, pára nesse ponto e descobre porquê; é aí que está a aprendizagem. Resolve depois os exercícios de cada ficha temática, primeiro os que seguem o exemplo da página e só depois as variações.

Avaliação

A forma de avaliação muda de ano para ano. Consulta a ficha da unidade curricular no SIGARRA e a página da disciplina no Moodle para saberes os prazos das fichas, o peso do projeto e as regras dos testes e do exame.

Fontes e âmbito

Estas páginas seguem o âmbito da unidade curricular de Fundamentos da Programação do 1.º ano, 1.º semestre da LEIC: programação em Python, com algoritmos e decomposição de problemas; tipos simples, variáveis e expressões; execução condicional e iteração; funções e âmbito de variáveis; strings, tuplos, listas, dicionários e conjuntos; recursão; programação funcional com map, filter e reduce, funções de ordem superior e lambda; compreensões e geradores; noções de análise de algoritmos com pesquisa linear e binária e ordens de crescimento; módulos, ficheiros, exceções e asserções.

Material oficial da FEUP:

  • Ficha da unidade curricular de Fundamentos da Programação, ocorrência de 2025/26, com objetivos, programa, bibliografia e avaliação (consultada em setembro de 2026): SIGARRA.
  • Fichas de exercícios RE01 a RE13 da cadeira (introdução ao ambiente, dados simples, fluxo de programa, condicionais e iteração, funções, strings, tuplos, listas, dicionários, recursão, programação funcional, ficheiros e exceções), preservadas em repositório público de estudante e consultadas como referência local.

Material histórico da FEUP, usado para confirmar a estrutura dos temas (os enunciados e a avaliação atuais estão na página da disciplina):

  • Repositórios públicos de exercícios da cadeira e da sua antecessora FPRO do Mestrado Integrado em Engenharia Informática e Computação (2018/19 e 2022/23), consultados como referência local: exercícios em Python por tema, do ambiente de trabalho à recursão e aos ficheiros.
  • Sebenta de introdução à programação em Python para cursos da FEUP (Sebenta LI, 2012/13), cadeira adjacente e histórica, consultada como referência local.

Notas de estudantes, úteis como apoio mas sem valor oficial:

  • Caderno FP SofiaViP, apontamentos de estudante em circulação pública que acompanham as aulas da cadeira, do algoritmo aos ficheiros e exceções (ficheiro PDF descarregado da pasta pública em setembro de 2026).

Os exemplos e exercícios destas páginas são originais, escritos para este site. Não reproduzem os enunciados das fichas.

Ver o ficheiro no GitHub

À tua maneira

Escolhe como preferes ler.

Aparência
Ajustar cores e largura
Cor de destaque do tema FEUP
Tipo de letra

Álgebra, lógica e uma ideia de cada vez.

As tuas escolhas ficam guardadas neste navegador.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.