CODICE 66054 ANNO ACCADEMICO 2017/2018 CFU 9 cfu anno 1 INGEGNERIA INFORMATICA 8719 (L-8) - SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05 LINGUA Italiano SEDE PERIODO Annuale MATERIALE DIDATTICO AULAWEB OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI Obiettivi: fornire metodologie di progettazione software secondo il paradigma procedurale e il paradigma orientato agli oggetti. Contenuti. Architettura di un calcolatore, strutture dati, analisi di problemi, loro risoluzione algoritmica, prestazioni degli algoritmi, programmazione procedurale strutturata e orientata agli oggetti col C++. PROGRAMMA/CONTENUTO Parte I - Fondamenti di programmazione 1) Introduzione all’informatica e alla programmazione 2) Il linguaggio C++: elementi di base 3) Operatori ed espressioni 4) La programmazione strutturata 5) Funzioni 6) Array 7) Strutture e unioni 8) Puntatori e riferimenti 9) Allocazione dinamica della memoria 10) Stringhe 11) Ordinamento e ricerca Parte II - Programmazione orientata agli oggetti 12) Classi e oggetti 13) Classi derivate: eredità e polimorfismo 14) Template Parte III - Strutture dati 15) Flussi e file: libreria standard di I/O 16) Liste 17) Pile e code 18) Ricorsione 19) Alberi Parte IV - Programmazione avanzata in C++ 20) Overloading degli operatori 21) Eccezioni TESTI/BIBLIOGRAFIA Luis Joyanes Aguilar, “Fondamenti di programmazione in C++”, McGraw-Hill, qualunque edizione. Un utile testo di consultazione è anche il classico di Brian W. Kernighan e Dennis M. Ritchie, “Il Linguaggio C”, qualunque edizione. DOCENTI E COMMISSIONI GUALTIERO VOLPE FULVIO MASTROGIOVANNI Commissione d'esame FULVIO MASTROGIOVANNI (Presidente) GUALTIERO VOLPE (Presidente) PIERPAOLO BAGLIETTO TULLIO VERNAZZA RENATO UGO RAFFAELE ZACCARIA LEZIONI Orari delle lezioni FONDAMENTI DI INFORMATICA ESAMI MODALITA' D'ESAME L'esame consiste in una prova pratica di programmazione e in una prova orale. Ci sono due modi per affrontare l'esame: 1) Esame solo alla fine del secondo semestre (da Giugno in poi). La prova pratica verte sugli argomenti di tutto il corso, e vale 16 punti. L'orale vale anch'esso 16 punti e deve esser superato entro Marzo dell'anno successivo. 2) Prova intermedia alla fine del primo semestre. Questa prova pratica è solo sugli argomenti del primo semestre e vale 8 punti. In ogni appello dopo la fine del secondo semestre c'è una seconda prova solo sugli argomenti del secondo semestre, e anch'essa vale 8 punti. L'orale completa l'esame con 16 punti come nel caso precedente. Valgono in ogni caso le seguenti regole: A) per essere ammessi alla prova orale occorre aver preso almeno 8 punti nella prova pratica (singola, o come somma delle due prove se si è fatto quella intermedia) B) il voto di una qualunque prova pratica può essere tenuto valido fino a Marzo dell'anno successivo, ma si azzera se si sostiene una nuova prova per migliorare il voto, o se si è bocciati in un esame, o se ci si ritira durante le prove di esame (sia pratica sia orale). MODALITA' DI ACCERTAMENTO Capacità di comprendere le specifiche di un problema di calcolo / elaborazione e scriverne la soluzione algoritmica; capacità di progettare le strutture dati e le funzioni per risolvere il problema assegnato; conoscenza della misura dell'efficienza computazionale di una certa soluzione algoritmica; capacità di codificare un algoritmo in linguaggio C++; conoscenza dei principi della programmazione strutturata e di quella a oggetti Calendario appelli Data appello Orario Luogo Tipologia Note 08/01/2018 09:00 GENOVA Prova pratica 31/01/2018 09:00 GENOVA Prova pratica 06/06/2018 09:00 GENOVA Prova pratica 04/07/2018 09:00 GENOVA Prova pratica 23/07/2018 09:00 GENOVA Prova pratica 03/09/2018 09:00 GENOVA Prova pratica 14/01/2019 09:00 GENOVA Scritto