Go to:
You are in:: Start > CC1015
Site map
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Programming I

Code: CC1015     Acronym: CC1015     Level: 100

Classification Keyword
OFICIAL Computer Science

Instance: 2017/2018 - 1S

Active? Yes
Web Page: http://www.dcc.fc.up.pt/~rpribeiro/aulas/prog1718/
Responsible unit: Department of Computer Science
Course/CS Responsible: First Degree in Chemistry

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:B 2 Official Study Plan 3 - 6 56 162
L:F 58 Official Study Plan 1 - 6 56 162
L:G 17 study plan from 2017/18 1 - 6 56 162
L:Q 3 study plan from 2016/17 3 - 6 56 162
MI:EF 74 study plan from 2017/18 1 - 6 56 162

Teaching Staff - Responsibilities

Teacher Responsibility
Rita Paula Almeida Ribeiro
Pedro Baltazar Vasconcelos

Teaching - Hours

Theoretical classes: 2,00
Laboratory Practice: 2,00
Type Teacher Classes Hour
Theoretical classes Totals 1 2,00
Rita Paula Almeida Ribeiro 2,00
Pedro Baltazar Vasconcelos 2,00
Laboratory Practice Totals 7 14,00
Verónica Costa Teixeira Pinto Orvalho 4,00
Francesco Renna 4,00
João Filipe Rodrigues 2,00
Rita Paula Almeida Ribeiro 4,00

Teaching language



Introduction to the use of computers running GNU/Linux operating systems.

Introduction to programming using the Python language.

Notions of low and high-level languages; interpreters and compilers; editor and development environments. Values, types, and expressions. Functions and procedures. Conditionals and selection. Iteration and recursion. Basic data structures: lists, tuples, and dictionaries. Plotting.


Learning outcomes and competences

At the end of the course, the student should be able to:

1. simulate the step-by-step execution of simple programs;

2. write programs to solve solve simple problems (e.g. numerical computations or text processing);

3. decompose problems into sub-tasks suitable for re-usable sub-routines;

4. debug programs using testing. 

Working method



1. A short introduction to computers.
2. Variables, expressions, statements.
3. Usage of libraries and support tools.
4. Modules and documentation.
5. Functions.
6. Conditions, decision, selection.
7. Iteration.
8. Strings.
9. Lists.
10. Plotting.
11. Dictionaries.
12. Recursion.

Mandatory literature

Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers; How to Think Like a Computer Scientist, n/a, 2012. ISBN: n/a
Brad Miller and David Ranum; Learning with Python: Interactive Edition

Complementary Bibliography

Allen B. Downey; Think Python
H. M. Deitel, P. J. Deitel, J. P. Liperi, B. A. Wiedermann;; Python: How to Program

Teaching methods and learning activities

Lectures; program analysis; practical, programming classes.


Python 3.x

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Exame 80,00
Participação presencial 0,00
Teste 20,00
Total: 100,00

Eligibility for exams

Frequency of practical classes, according to the rules of the University.
Successful submission at least half of the requested problems (with automated evaluation).

Calculation formula of final grade

80% * Final exam grade + 20% * Mid-term test grade

Recommend this page Top
Copyright 1996-2022 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2022-11-29 at 16:51:05 | Reports Portal