Introdução à Programação
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Ciência de Computadores |
Ocorrência: 2020/2021 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
Pretende-se que os alunos:
1. Se familiarizem com a utilização de computadores pessoais com sistema operativo da família GNU/Linux;
2. Aprendam a programar na linguagem Python e a executar os programas num terminal;
3. Adquiram competência para codificar algoritmos elementares;
4. Adquiram bons hábitos de programação e de estruturação dos programas;
5. Apreendam algumas estruturas de dados e algoritmos fundamentais;
6. Adquiram competências para testar e corrigir erros dos seus programas.
Resultados de aprendizagem e competências
Resultados:
1. Perceção do papel da programação na resolução de problemas na licenciatura.
2. Domínio dos componentes básicos de uma linguagem de programação recente.
3. Capacidade de escrever programas que permitam realizar objetivos úteis.
4. Confiança no uso da linguagem Python e da biblioteca padrão.
Modo de trabalho
Presencial
Programa
1. Breve introdução aos computadores
2. Variáveis, expressões, instruções
3. Fluxo num programa
4. Funções
5. Tipos de dados
6. O módulo numpy
7. Ficheiros
8. Módulos Python
9. Mais tipos de dados
10. Recursão
11. Classes e objetos
12. Exceções
Bibliografia Obrigatória
Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers; How to Think Like a Computer Scientist: Learning with Python 3 (Disponível na Internet em: https://buildmedia.readthedocs.org/media/pdf/howtothink/latest/howtothink.pdf)
Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers; How to Think Like a Computer Scientist, 2012 (Disponível na Internet em: http://openbookproject.net/thinkcs/python/english3e/)
Bibliografia Complementar
Allen B. Downey; Think Python (Disponível na Internet em: http://www.greenteapress.com/thinkpython/thinkpython.html)
Allen B. Downey; Modeling and Simulation in Python, Green Tea Press, 2017 (Disponível na Internet em: http://greenteapress.com/modsimpy/ModSimPy3.pdf)
Métodos de ensino e atividades de aprendizagem
Exposição teórica e análise de programas.
Aulas práticas para resolução de exercícios.
Software
Python 3.x
Palavras Chave
Ciências Físicas > Ciência de computadores > Programação
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Designação |
Peso (%) |
Exame |
60,00 |
Teste |
40,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Estudo autónomo |
106,00 |
Frequência das aulas |
56,00 |
Total: |
162,00 |
Obtenção de frequência
Frequência obrigatória às aulas práticas (conforme o regulamento da Universidade do Porto).
Condições adicionais:
- Ter efetuado com sucesso pelo menos metade dos testes efetuados nas aulas (com correção automática).
Fórmula de cálculo da classificação final
20% Média dos testes com correção automática submetidos nas aulas teóricas
20% Média dos testes com correção automática submetidos nas aulas práticas
60% Nota do exame final
(Classificação mínima no exame final: 9 valores em 20)
Melhoria de classificação
Exame (com peso de 100% na nota).
Observações
Elementos do júri: João Pedro Pedroso, Rita Ribeiro.