Fondamenti di programmazione
- A.A. 2025/2026
- CFU 6
- Ore 40
- Classe di laurea L-41 R
È fortemente consigliato aver previamente seguito il corso di Fondamenti di Informatica (Modulo A) o, in alternativa, possedere conoscenze di base sull’uso del computer, sulla codifica dell'informazione e sui principi della logica algoritmica.
Il corso ha come obiettivo principale l’introduzione ai fondamenti della programmazione imperativa, utilizzando il linguaggio Python come strumento didattico. Verranno presentati i concetti chiave della programmazione strutturata, attraverso l’analisi e l’implementazione di algoritmi elementari, l’uso delle principali strutture dati predefinite, la definizione di funzioni e la gestione delle eccezioni.
Il corso fornisce inoltre una base solida per lo sviluppo di competenze preliminari, sia logiche sia di programmazione, orientate all’analisi e alla risoluzione di problemi computazionali elementari attraverso la progettazione di algoritmi e la loro traduzione in programmi eseguibili.
Gli obiettivi specifici sono articolati come segue:
Conoscenza e comprensione
Lo studente acquisirà familiarità con i concetti fondamentali della programmazione imperativa e con l’ambiente di sviluppo Python. Comprenderà il funzionamento delle strutture di controllo, delle funzioni e delle strutture dati basilari.
Capacità di applicare conoscenza e comprensione
Lo studente sarà in grado di progettare e implementare semplici algoritmi, traducendoli in codice Python funzionale e leggibile. Sarà inoltre in grado di risolvere problemi pratici utilizzando strutture dati appropriate e tecniche di programmazione strutturata.
Il corso introduce i fondamenti della programmazione utilizzando Python come linguaggio di riferimento. L’obiettivo è fornire agli studenti strumenti concettuali e operativi per l’analisi e la risoluzione algoritmica di problemi utilizzando il linguaggio di programmazione Python.
I principali argomenti trattati includono:
- Introduzione software, hardware e sviluppo degli algoritmi;
- Programmare con numeri e stringhe;
- Decisioni;
- Cicli;
- Funzioni;
- Liste;
- Eccezioni e File;
- Insiemi e Dizionari.
(C) Cay S. Horstmann, Rance D. Necaise, M. Dalpasso Concetti di informatica e fondamenti di Python Maggioli Editore, 2019 ISBN: 9788891635433
(C) Salvatore Mancarella, Programmazione in Python per le scienze della vita. Città Studi, 2023 ISBN: 9788825176441
(C) Paul J. Deitel, Harvey M. Deitel, Introduzione a Python. Per l'informatica e la data science. Ediz. MyLab Pearson, 2021ISBN: 9788891911452
Altre informazioni / materiali aggiuntivi
N/A
-
- Lezioni frontali
- Esercitazioni al PC con codice Python
Materiali del corso
- Slide
- Esercizi Risolti (Codice Python)
La valutazione degli studenti si basa su un’unica prova scritta individuale, che consiste nello svolgimento di esercizi di programmazione in Python, relativi ai contenuti trattati nel corso.
Durante la prova, gli studenti dovranno utilizzare un PC per scrivere il codice risolutivo di problemi elementari proposti.
Il codice dovrà essere scritto utilizzando un semplice editor di testo (Blocco Note), senza l’ausilio di materiale didattico, di ambienti di sviluppo Python (IDE), di Internet, o di strumenti basati su intelligenza artificiale (es. ChatGPT, Copilot, ecc.).
Il docente valuterà l’effettiva correttezza e funzionalità del codice prodotto, tenendo conto della capacità di risolvere il problema proposto e dell’aderenza alle specifiche richieste.
Il docente metterà a disposizione esercizi in Python di esempio durante le lezioni, utili alla preparazione della prova d’esame.
L’esame si considera superato con una valutazione minima di 18/30.
Inglese
Italiano