fisica.uc.pt • Departamento de Física • Universidade de Coimbra
DEPT. DE FÍSICA
uc  ›  fctuc  ›   fisica  ›   course specifications
fisica.uc.pt
o dept de física
pessoas
ensino
•lic. e mestrado
•doutoramento
•prog. erasmus
investigação
estudar aqui
actividades
contactos
 
2017 - 2018 ↑↓
escolha o ano lectivo:
2019.2020
2018.2019
2017.2018
2016.2017
2015.2016
2014.2015
2013.2014
2012.2013
2011.2012
2010.2011
2009.2010
2008.2009
2007.2008
2006.2007
2005.2006
2004.2005
2003.2004
2002.2003
CALENDAR
SUBJECTS
TIMETABLES
ROOMS
TEACHING MAP
EXAMS MAP
      
Computers and Programming
F
2017 . 2018  - 1º semestre
SYNOPSIS SYLLABUS TIMETABLE ASSESSMENT SPECIFICATION


Specification sheet

Specific details
course codecycle os studiesacademic semestercredits ECTSteaching language
1002770114.5pt


Learning goals
Objectives of major importance:
- Acquire a general knowledge about the operation of a digital computer and about data representation.
- Learn to develop simple algorithms to solve given problems.
- Acquire a generic knowledge about the imperative, functional and object-oriented programming paradigms.
- Learn to use a very high level programming language (Python).

Objectives of secondary importance:
- Learn to search the internet for required bibliography and appropriate software tools.
- Acquire an operational knowledge about basic numerical analysis algorithms applied to typical physical systems and engineering problems.
- Learn to develop, within a team, small modular software projects.
Syllabus
The architecture (von Neumann model) of a digital computer. Operating systems.
Binary representation of integer and real numbers, text, images and sound.
Introduction to Python programming language.
The attribution instruction. The concept of pointer and aliasing.
Numeric types: integers, long integers, floating point, and complex.
Booleans.
Sequences (lists, tuples and strings) and sets. Iteration and slicing. List comprehension.
Dictionaries.
Flow control instructions.
Functions. Namespaces and scope. Argument passing and return values mechanism.
Imperative and functional programming.
Modules. Files. Formatting. Input and output redirection.
Exceptions and handling instructions.
Object-oriented programming. Class and instantiation. Attributes and methods. Inheritance, encapsulation, and polymorphism. Operator overload. Introspection and metaprogramming.
Recursion. Iterators and generators.

Basic numerical methods applied to physics problems.
Prerequisites
None
Generic skills to reach
. Computer Skills for the scope of the study;
. Competence to solve problems;
. Using the internet as a communication medium and information source;
. Critical thinking;
. Competence in applying theoretical knowledge in practice;
. Competence in analysis and synthesis;
. Competence in organization and planning;
. Knowledge of a foreign language;
. Competence in information management;
. Competence for working in group;
. Creativity;
(by decreasing order of importance)
Teaching hours per semester
laboratory classes60
total of teaching hours60

Assessment
Sseminar or study visit- %
Laboratory or field work- %
Problem solving30 %
Synthesis work thesis- %
Project- %
Research work- %
Mini tests- %
Assessment Tests70 %
Exam- %
Other- %
- %
- %

Bibliography of reference
1. Documentação online do Python:
- Homepage: http://www.python.org
- Tutorial: http://docs.python.org/tutorial/introduction.html
- Tutorial em português: http://turing.com.br/pydoc/2.7/tutorial/introduction.html
2. Learning Python, M. Lutz, D. Ascher, O'Reilly
3. How to think like a computer scientist, A. Downey, J. Elkner & C. Mayers, Green Tee Press
4. Numerical methods in engineering with Python, J Kiusalaas, Cambridge University Press
5. Python for dummies, S. Maruch, A. Maruch, Wiley
6. Computadores e Programação ? Apontamentos da disciplina, Helmut Wolters
Teaching method
This course is taught with a theoretical-practical approach with a great emphasis on the understanding and development of algorithms for real problems, including a first approach to some numerical analysis methods applied to simple physical and engineering problems.
Each class may start with a short presentation of some formal aspects of the language after which the students are asked to solve a set of problems using Python interactively.
Resources used
Laboratório de computação
print-version

Departamento de Física, UC ©2013
Contactos    Sugestões    Aviso legal     Emergência
Search     Português    Login
acesso restrito a:
fisica.uc.pt
www.uc.pt
infordocente.uc.pt
inforestudante.uc.pt
lugus.uc.pt
Search     Português    Login
acesso restrito a:
fisica.uc.pt
www.uc.pt
infordocente.uc.pt
inforestudante.uc.pt
lugus.uc.pt