Programma dettagliato dell'insegnamento (bozza)
Completion requirements
Questo è il programma dettagliato (congiunto) degli insegnamenti di Programmazione e Algoritmi 1 e di Laboratorio di Programmazione 1 per l'anno accademico 2025/26. Il programma è attualmente allo stato di bozza. Piccole variazioni potrebbero essere apportate durante lo svolgimento degli insegnamenti.
- Introduzione alla programmazione
- Hardware e software
- Programmi e algoritmi
- Linguaggi di programmazione, interpreti e compilatori
- Software libero e proprietario
- Introduzione a Linux
- Introduzione a Python
- Il primo programma in Python
- Variabili e tipi di dato numerici
- Espressioni aritmetiche
- Input e output da terminale
- Le stringhe
- Grafica con la libreria ezgraphics
- Istruzioni ed operatori condizionali
- L'istruzione if
- Operatori relazionali
- Diramazioni annidate
- Alternative multiple
- Operatori booleani
- Iterazione definita e indefinita
- Le istruzioni while
- Schemi d'uso dell'istruzione while
- L'istruzione break
- L'istruzione for
- Cicli annidati
- Numeri casuali e simulazione
- Il debugger
- Funzioni
- Implementazione di funzioni
- Passaggio di parametri
- Risultato delle funzioni
- Ambito di visibilità delle variabili
- Collaudo di funzioni con il framework pytest
- Liste, inisiemi e dizionari
- Liste
- Oggetti e riferimenti
- Tipi mutabili e immutabili
- Algoritmi che operano sulle liste
- La list comprehension
- Tabelle come liste di liste
- Insiemi
- Dizionari
- Gestione dei file
- Leggere e scrivere file di testo
- Cenni al trattamento delle eccezioni
- Ricorsione
- Funzioni ricorsive
- La pila dei record di attivazione
- Cenni al concetto di complessità computazionale
- Complessità computazionale
- Calcolo della complessità di un algoritmo
- Algoritmi di ordinamento e ricerca
- La ricerca lineare e binaria
- Ordinamento per selezione
- Ordinamento per fusione
Last modified: Thursday, 14 August 2025, 5:39 PM