Programming
A.A. 2023/2024
Learning objectives
The course introduces the student to programming in Python and solving computational problems using algorithms. The main notions of imperative programming (variables, expressions, loops, functions, recursion, input / output) and the fundamental elements of object-oriented programming are provided.
Expected learning outcomes
Students will acquire the ability to write and tune a program that automatizes simple computational tasks; they will be able to understand how a small piece of Python code works, to find the reasons of a malfunction and to correct it appropriately
Periodo: Primo semestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.
Course syllabus and organization
Edizione unica
Responsabile
Periodo
Primo semestre
Programma
Computer system overview
- computer architecture
- operating system
- computer network
- information systems
Imperative programming
- top-down / bottom-up programming
- values, variables, expressions
- I/O instructions
- constructs, selection, loop
- functions, recursion
- I/O file
- libraries
Object-oriented programming
- fields and methods
- data types (arrays, lists)
- computer architecture
- operating system
- computer network
- information systems
Imperative programming
- top-down / bottom-up programming
- values, variables, expressions
- I/O instructions
- constructs, selection, loop
- functions, recursion
- I/O file
- libraries
Object-oriented programming
- fields and methods
- data types (arrays, lists)
Prerequisiti
Competenze informatiche di base
Metodi didattici
- Lezioni teoriche (Power point e scrittura su lavagna)
- Gli studenti possono portare i loro laptops per fare girare i codici e algoritmi (facoltativo)
- Gli studenti possono portare i loro laptops per fare girare i codici e algoritmi (facoltativo)
Materiale di riferimento
Think Python How to Think Like a Computer Scientist by Allen B. Downey, 2015, second edition
Modalità di verifica dell’apprendimento e criteri di valutazione
Esami: 1 scritto e 1 orale (progetto incluso) e compiti.
1 esame scritto (50% del voto complessivo), di durata 70 minuti.
1 esame orale e un progetto (40% del voto complessivo)
Compiti (10% del voto complessivo)
1 esame scritto (50% del voto complessivo), di durata 70 minuti.
1 esame orale e un progetto (40% del voto complessivo)
Compiti (10% del voto complessivo)
Educational website(s)
Professor(s)