- Docente: Simone Martini
- Crediti formativi: 6
- SSD: INF/01
- Lingua di insegnamento: Inglese
- Moduli: Simone Martini (Modulo 1) Maurizio Gabbrielli (Modulo 2)
- Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
- Campus: Bologna
- Corso: Laurea Magistrale in Artificial intelligence (cod. 9063)
Conoscenze e abilità da conseguire
Al termine dell'attività formativa, lo studente è capace di analizzare un problema, formulare un algoritmo per risolverlo e codificare tale algoritmo in un programma eseguibile. Lo studente conosce alcuni algoritmi di base e un linguaggio di programmazione.
Contenuti
Informatica e problem solving. Macchine astratte. La macchina Python. Programmazione in Python: nomi e loro visibilità, funzioni, oggetti modificabili e non modificabili, strutture dati di base (stringhe, ennuple, liste, dizionari) e loro uso nella risoluzione di problemi di media difficoltà. Classi e oggetti; metodi ed ereditarietà. Cenni ad alcune librerie (p.e., numpy e i suoi array N-dimensionali).
Saranno proposti esercizi ed attività di laboratorio.
Testi/Bibliografia
Allen B. Downey
Think Python 2e.
O'Reilly Media, 2012. ISBN 978-1449330729.
On-line manuscript: see http://www.cs.unibo.it/~martini/MATH/index.html
Jessen Havill
Discovering Computer Science: Interdisciplinary Problems, Principles, and Python Programming
Chapman and Hall/CRC. ISBN 9781482254143
Metodi didattici
Lezioni in aula.
Esercitazioni guidate usando in aula i computer portatili degli studenti (BYOD: Bring Your Own Device).
Modalità di verifica e valutazione dell'apprendimento
Esame scritto
Orario di ricevimento
Consulta il sito web di Simone Martini
Consulta il sito web di Maurizio Gabbrielli
SDGs

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.