Como chegar
|
Contactos

Fundamentos de Programação de Computadores 2018/2019

  • 4 ECTS
  • Lecionada em Português
  • Avaliação Mista

Objetivos

A unidade curricular 'Fundamentos da Programação de Computadores' constitui a introdução aos conhecimentos e competências na área de programação de computadores.

Os estudantes que completarem a unidade curricular serão capazes de:
I. Reconhecer e explicar o papel dos algoritmos na resolução de problemas.
II. Conhecer e saber aplicar os conceitos de programação estruturada, programa, estrutura de dados e algoritmo.
III. Criar programas de computador de pequena dimensão que demonstrem os conceitos, princípios e métodos de programação.
IV. Interpretar e modificar programas de computador de dimensão média cujo estilo de escrita seja clara.

Pré-Requisitos Recomendados

sem pré-requisitos

Método de Ensino

As aulas são de dois tipos: teórico-práticas com exposição, demonstração e discussão dos temas abordados, e práticas para realização de trabalhos práticos para a resolução de pequenos programas com vista a aplicarem os conceitos ensinados.

Conteúdos Programáticos

1. Visão geral e história do computador e das linguagens de programação
2. Conceitos básicos
2.1 Programação estruturada
2.2 Notação utilizada
2.3 Operadores
3. Intruções
3.1 Sequenciais
3.2 Decisão
3.3 Repetição
4. Traçagens e Teste
5. Programas modulares
6. Vetores
6.1 Ordenação e pesquisa
7. Introdução à linguagem Python
8. Exercícios práticos

Bibliografia e Webgrafia Recomendada

Luciano Ramalho, Fluent Python: Clear, Concise, and Effective Programming, O'Reilly Media,1st edition, 2015, 978-1491946008

Cormen, T., Leiserson, C., Rivest, R., Stein, C., Introduction to Algorithms, MIT Press; 3rd edition, 2009.

Planificação Semanal

semana1 - Apresentação
semana2 - História do computador, introdução aos algoritmos, pseudo-código e flowcharts, intruções sequenciais
semana3 - Instruções de decisão binária e multipla
semana4 - Instruções de repetição condicional e deterministica
semana5 - Traçagens e testes, funções e vectores, ordenação e pesquisa
semana6 - Introdução aos diferentes tipos de linguagens de programação, introdução ao Python
semana7 - Em ambiente python: funções, variáveis, expressões e condições
semana8 - Em ambiente python: ciclos e strings
semana9 - Em ambiente python:listas, tuplos, conjuntos e dicionários
semana10 - Em ambiente python: conjuntos e dicionários
semana11 - Em ambiente python: Objetos, classes e recursão
semana12 - Em ambiente python: exercícios
semana13 - Em ambiente python: exercícios
semana14 - Em ambiente python: exercícios
semana15 - Em ambiente python: exercícios

Coerência do programa para com os objetivos

Os conteúdos programáticos lecionados permitem aos alunos adquirir conhecimentos relevantes com os quais serão capazes de perceber a complexidade do desenho de um algoritmo e como implementar um programa. Nomeadamente os conteúdos de 1-6 permitem ao aluno atingir os objectivos (I)-(II). Os conteúdos 7-8 contribuem para os objectivos (III)-(IV). O conjunto integrado dos conteúdos contribuem para que o aluno saiba desenhar, implementar e testar um programa.

Coerência dos métodos de ensino para com os objetivos

A união entre a exposição teórica da matéria e a apresentação de exemplos práticos permite aos alunos a familiarização com os conceitos fundamentais e a linguagem de programação e atingir os objetivos (I)-(II). A resolução de problemas simples guiada será utilizada para atingir os objetivos (III)-(IV).

competência genérica relevantedesenvolvida?avaliada?
Capacidade crítica e de avaliaçãoSim 
Competência em informática e uso de novas tecnologias Sim
CriatividadeSim 
Preocupação com a eficáciaSim 
Preocupação com a qualidadeSim 
Relacionamento interpessoalSim 
Resolução de problemas Sim
Saber organizar, planear e gerirSim 
Trabalho em equipaSim 
Este website usa cookies para funcionar melhor e medir a performance (Diretiva da União Europeia 2009/136/EC)