CODICE 101448 ANNO ACCADEMICO 2024/2025 CFU 7 cfu anno 1 INGEGNERIA ELETTRICA 8716 (L-9) - GENOVA 6 cfu anno 1 INGEGNERIA CHIMICA E DI PROCESSO 10375 (L-9) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05 LINGUA Italiano (Inglese a richiesta) SEDE GENOVA PERIODO 2° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE L'insegnamento introduce i principali concetti dell'elaborazione dell'informazione tramite calcolatori, con particolare enfasi sulla parte di programmazione. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI L'obiettivo dell'insegnamento è introdurre agli studenti le competenze fondamentali riguardo l'architettura e il funzionamento dei calcolatori. Unitamente ai concetti teorici, l'insegnamento dedicherà uguale attenzione alla programmazione imperativa con linguaggi di alto livello. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO L’obiettivo dell'insegnamento è quello di introdurre lo studente ai concetti fondamentali relativi ai calcolatori e alla loro programmazione. L'insegnamento fornirà conoscenze sull’organizzazione di un’architettura di elaborazione, sulla struttura dei principali programmi applicativi, e sulla programmazione in linguaggio Python, con riferimento ai principali tipi di dato e costrutti di programmazione. Nell’ambito dell'insegnamento lo studente acquisirà le competenze per realizzare semplici applicativi utilizzando il linguaggio Python, la capacità di valutarne in modo empirico le prestazioni e di scegliere le migliori strutture dati, fra quelle disponibili nel linguaggio, per realizzare determinati compiti. Gli obiettivi sono, nello specifico: - Capacità di comprendere il funzionamento di un calcolatore e dei suoi principali componenti. - Capacità di comprendere il funzionamento di un sistema operativo e dei suoi principali componenti - Capacità di sviluppare semplici applicativi con il linguaggio Python PREREQUISITI Il corso non prevede particolari prerequisiti. MODALITA' DIDATTICHE Il corso è svolto dal docente mediante lezioni frontali alternate ad esercitazioni svolte in classe con il supporto del docente. PROGRAMMA/CONTENUTO Il Calcolatore: struttura e funzionalità dei principali componenti Il Sistema Operativo: struttura e funzionalità dei principali componenti Programmazione: dagli algoritmi al codice Il linguaggio Python: variabili e gestione della memoria; espressioni numeriche e testuali; espressioni logiche; strutture di controllo: scelta condizionale, iterazione, procedure e funzioni; strutture dati predefinite: liste, insiemi, dizionari; utilizzo di I/O da file e da console. TESTI/BIBLIOGRAFIA Tony Gaddis - Introduzione a Python (5a edizione) - Pearson Dispense e materiali didattici resi disponibili dal docente sul sito web del corso e proiettati a lezione. DOCENTI E COMMISSIONI MATTEO CARDELLINI Commissione d'esame MATTEO CARDELLINI (Presidente) DANIELE MESTRINER MAURIZIO FRANCO MAZZUCCHELLI (Presidente Supplente) LEZIONI INIZIO LEZIONI https://corsi.unige.it/8716/p/studenti-orario Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME L'esame consiste di una prova scritta cartacea e di una prova pratica al computer. La parte di programmazione deve essere effettuata sia su carta (pseudocodice) che su computer (codice Python). Se le due parte non coincidessero si procede a una prova orale. Durante la parte cartacea è consentito utilizzare appunti o testi ma non sono ammessi palmari o telefonini. Durante la parte al calcolatore si può usare ogni tipo di supporto. MODALITA' DI ACCERTAMENTO Capacità di sviluppare un'applicazione Python che legga dati da un file di testo, li rielabori e produca un output desiderato. Calendario appelli Data appello Orario Luogo Tipologia Note 08/01/2025 09:30 GENOVA Scritto AULA INFAL2 22/01/2025 09:30 GENOVA Scritto AULA G3B 10/02/2025 09:30 GENOVA Scritto AULA INFAL2 03/06/2025 09:30 GENOVA Scritto INFAL1 02/07/2025 09:30 GENOVA Scritto INFAL1 08/09/2025 09:30 GENOVA Scritto