Programming I
Keywords |
Classification |
Keyword |
OFICIAL |
Computer Science |
Instance: 2023/2024 - 2S ![Requerida a integração com o Moodle Ícone do Moodle](/fcup/pt/imagens/MoodleIcon)
Cycles of Study/Courses
Teaching language
Portuguese
Objectives
In this course the students will:
1. Get acquainted with personal computers in the GNU/Linux operating system and their usage;
2. Learn how to write computer programs using Python and execute them in a terminal.
3. Acquire competence in the implementation of simple algorithms;
4. Acquire good code structuring and programming style;
5. Learn some basic data structures and algorithms;
6. Get acquainted with program debugging and testing.
Learning outcomes and competences
Outcomes:
1. Understanding the role of programming for solving problems in the degree.
2. Acquaintance with the basic components of a recent programming language.
3. Ability to write programs that allow accomplishing useful goals.
4. Confidence in the usage of the Python language and its standard library.
Working method
Presencial
Program
1. A short introduction to computers
2. Variables, expressions and statements
3. Program Flow
4. Functions
5. Data Types
6. Numpy
7. Files
8. Modules
9. More datatypes
10. Recursion
11. Classes and Objects
12. Exceptions
Mandatory literature
Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers; How to Think Like a Computer Scientist: Learning with Python 3
Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers; How to Think Like a Computer Scientist, 2012
Complementary Bibliography
Allen B. Downey; Think Python
Allen B. Downey; Modeling and Simulation in Python
Teaching methods and learning activities
Lectures; program analysis.
Practical, programming classes.
Software
Python 3.x
keywords
Physical sciences > Computer science > Programming
Evaluation Type
Distributed evaluation with final exam
Assessment Components
designation |
Weight (%) |
Exame |
80,00 |
Teste |
20,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
designation |
Time (hours) |
Estudo autónomo |
114,00 |
Frequência das aulas |
48,00 |
Total: |
162,00 |
Eligibility for exams
Frequency of practical classes, according to the rules of the University.
Additional conditions:
- Having successfully completed at least half of the proposed problems in class (with automatic correction).
Calculation formula of final grade
Regular:
20% Mid-semester test
80% Final exam grade
(Minimum grade at the final exam: 50%)
Supplementary:
100% Final exam grade
Classification improvement
Exam (worth 100% of the grade)