Introduction to Programming
Keywords |
Classification |
Keyword |
OFICIAL |
Computer Science |
Instance: 2021/2022 - 1S
Cycles of Study/Courses
Acronym |
No. of Students |
Study Plan |
Curricular Years |
Credits UCN |
Credits ECTS |
Contact hours |
Total Time |
L:EA |
13 |
The study plan from 2019 |
1 |
- |
6 |
56 |
162 |
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, Green Tea Press, 2017
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 |
60,00 |
Teste |
40,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
designation |
Time (hours) |
Estudo autónomo |
106,00 |
Frequência das aulas |
56,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
20% Average mark of exercises during theoretical classes
20% Average mark of exercises during practical classes
60% Final exam grade
(Minimum grade at the final exam: 50%)
Classification improvement
Exam (with weight 100% on the grade)
Observations
Jury: João Pedro Pedroso, Rita Ribeiro.