Go to:
Logótipo
You are in:: Start > CC1024

Introduction to Programming

Code: CC1024     Acronym: CC1024     Level: 100

Keywords
Classification Keyword
OFICIAL Computer Science

Instance: 2022/2023 - 1S

Active? Yes
Responsible unit: Department of Computer Science
Course/CS Responsible: Bachelor in Computer Science

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:CC 104 study plan from 2021/22 1 - 6 56 162
L:IACD 101 study plan from 2021/22 1 - 6 56 162
Mais informaçõesLast updated on 2022-09-25.

Fields changed: Eligibility for exams

Teaching language

Portuguese

Objectives

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 environmnets. Values, types and expressions. Functions and procedures. Conditionals and selection. Iteration and recursion. Basic data structures and algorithms:  data processing, text, numerical computation.

Learning outcomes and competences

At the end of the course, students 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

5. know elementary algorithms for data and text processing and numeric computation.

Working method

Presencial

Program


1. Brief historical introduction to computing and programming languages.
2. Introduction to Python: variables, expressions and instructions.
3. Interactive use of Python language; defining scrips and short functions.
4. Conditions and logical values; instructions for conditional execution
5. Cicles and iteration. 
6. Using pseudo-random numbers; examples for simulation.
7. Numerical solution of equations; implementation of basic algorithms
8. Processing indexed variables (lists) and text (strings).
9. Writing and reading data as text files; plotting data using external tools (e.g. gnuplot).
10. Recursion.
11. Definition of new data types. Brief introduction to object-oriented programming.

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; students will use tools for automatic evaluation of their programs.

Software

Codex (https://codex.dcc.fc.up.pt)
Python 3 (https://www.python.org)
Mooshak (https://mooshak.dcc.fc.up.pt)
Python tutor (https://pythontutor.com)

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Exame 75,00
Teste 25,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Frequência das aulas 56,00
Trabalho laboratorial 50,00
Estudo autónomo 56,00
Total: 162,00

Eligibility for exams

Frequency of practical classes, according to the rules of the University and FCUP.  Students must attend at least 75% of the practical classes to be admitted to the exams. Students who miss more than three classes cannot attend the exams (unless we will have to change this rule due to Covid 19). 


Calculation formula of final grade


  • First phase ("Época normal"):  0.75 E  + 0.175 T + 0.075 P



  • "Época de recurso": 


             Max(0.75 E  + 0.175 T + 0.075 P;  0.925 E  + 0.075 P)

E: Final exam ("época normal" or "época de recurso")
T: Mid-term test 
P: Programming test with automatic evaluation (during the semester)

Classification improvement

By final exam.

Observations

Jury:
Ana Paula Tomás
Pedro Gabriel Ferreira
Recommend this page Top
Copyright 1996-2024 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2024-10-06 at 18:30:24 | Acceptable Use Policy | Data Protection Policy | Complaint Portal