Marco LOMBARDI | FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE
Marco LOMBARDI FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE
cod. 0612300054
FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE
0612300054 | |
DIPARTIMENTO DI INGEGNERIA INDUSTRIALE | |
CORSO DI LAUREA | |
INGEGNERIA MECCANICA | |
2018/2019 |
OBBLIGATORIO | |
ANNO CORSO 1 | |
ANNO ORDINAMENTO 2018 | |
PRIMO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
ING-INF/05 | 8 | 80 | LEZIONE |
Obiettivi | |
---|---|
CONOSCENZA E COMPRENSIONE CONOSCENZE SULL’ARCHITETTURA DEGLI ELABORATORI E COMPRENSIONE DELLA MODALITÀ DI FUNZIONAMENTO DI UN ELABORATORE ELETTRONICO, DELLA CODIFICA E RELATIVA RAPPRESENTAZIONE DELLE INFORMAZIONI, DEI COSTRUTTI FONDAMENTALI DELLA PROGRAMMAZIONE STRUTTURATA, DI VETTORI E MATRICI, DELLA RAPPRESENTAZIONE DEGLI ALGORITMI CON DIAGRAMMI A BLOCCHI, DELLA SINTASSI DEL LINGUAGGIO MATLAB E DEL SUO UTILIZZO PER LA REALIZZAZIONE DI ALGORITMI. CONOSCENZA DELLE FASI DI PROGETTAZIONE ED ANALISI DI UN PROGRAMMA. CONOSCENZA DI BASE DELLE PRINCIPALI CARATTERISTICHE DI UNA BASE DI DATI ED ELEMENTI DEL LINGUAGGIO SQL. CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE - ANALISI INGEGNERISTICA CAPACITÀ DI SVILUPPARE SEMPLICI ALGORITMI ATTRAVERSO LA SCOMPOSIZIONE IN SOTTO-PROBLEMI, RAPPRESENTANDO TALI ALGORITMI CON DIAGRAMMI A BLOCCHI. CAPACITÀ DI TRADURRE DETTI ALGORITMI IN LINGUAGGIO MATLAB MEDIANTE PROGRAMMAZIONE STRUTTURATA, CURANDO LA COMPRENSIBILITÀ DEI PROGRAMMI. SAPER INTERPRETARE E COMPRENDERE CODICE SCRITTO IN LINGUAGGIO MATLAB. CAPACITÀ DI PRODURRE E COMPRENDERE SEMPLICI INTERROGAZIONI A BASI DI DATI, IN LINGUAGGIO SQL. CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE – PROGETTAZIONE INGEGNERISTICA SAPER CODIFICARE SEMPLICI ALGORITMI UTILIZZANDO IL LINGUAGGIO MATLAB. CAPACITÀ DI VERIFICARE IL CORRETTO FUNZIONAMENTO DI PROGRAMMI MATLAB. SAPER PRODURRE E COMPRENDERE SEMPLICI INTERROGAZIONI IN LINGUAGGIO SQL, AL FINE DI OTTENERE INFORMAZIONI DA ESTRARRE DA UNA BASE DI DATI. AUTONOMIA DI GIUDIZIO – PRATICA INGEGNERISTICA SAPER SCEGLIERE ED UTILIZZARE I COSTRUTTI BASE DEL LINGUAGGIO MATLAB PER LA CODIFICA DI ALGORITMI. COMPRENDERE SEMPLICI INTERROGAZIONI SU BASI DI DATI, IN LINGUAGGIO SQL. CAPACITÀ TRASVERSALI - CAPACITÀ DI APPRENDERE IL CORSO MIRA A SVILUPPARE LA CAPACITÀ DI APPRENDIMENTO DEGLI STUDENTI CHE CONSENTA LORO DI AGGIORNARE IN AUTONOMIA, CONTINUAMENTE, LE PROPRIE CONOSCENZE E COMPETENZE, DI APPLICARE LE METODOLOGIE ACQUISITE IN AMBITI DIVERSI DA QUELLI INVESTIGATI DURANTE IL CORSO, UTILIZZANDO FONTI DI INFORMAZIONI DIVERSE DAI LIBRI DI TESTO ADOTTATI, QUALI INFORMAZIONI RECUPERABILI ONLINE. |
Prerequisiti | |
---|---|
NESSUNO. |
Contenuti | |
---|---|
[CONCETTI PRELIMINARI] (8H LEZ + 2H ES.) - INFORMAZIONE E DATO, TRATTAMENTO DELL’INFORMAZIONE, HARDWARE E SOFTWARE. - ARCHITETTURA DI UN SISTEMA PER L’ELABORAZIONE DELL’INFORMAZIONE. COMPONENTI DELLA MACCHINA DI VON NEUMANN. CICLO FETCH-DECODE-EXECUTE. - CODIFICA E RAPPRESENTAZIONE DELL’INFORMAZIONE. CONCETTO DI LINGUAGGIO E SUA FUNZIONE. RAPPRESENTAZIONE DELL’INFORMAZIONE NEI CALCOLATORI. CODIFICA BINARIA DI NUMERI E CARATTERI. SISTEMA DI NUMERAZIONE POSIZIONALE. BASI DI RAPPRESENTAZIONE E TECNICHE DI CONVERSIONE TRA BASI. TECNICHE DI RAPPRESENTAZIONE NUMERICA. - ALGEBRA DI BOOLE E CIRCUITI LOGICI. CARATTERISTICHE ED AMBITI DI UTILIZZO. RELAZIONE TRA ALGEBRA BOOLEANA E CIRCUITI LOGICI. PRINCIPALI OPERATORI: AND, OR, NOT. PROPRIETÀ E LEGGI DELL’ALGEBRA BOOLEANA. TAVOLE DI VERITÀ. FUNZIONI LOGICHE. PRODOTTO FONDAMENTALE O MINIMO. RAPPRESENTAZIONE IN FORMA CANONICA. TRASFORMARE UNA TAVOLA DI VERITÀ IN UNA FUNZIONE LOGICA. TRASFORMARE UNA FUNZIONE BOOLEANA IN UN CIRCUITO LOGICO E VICEVERSA. [FONDAMENTI DI PROGRAMMAZIONE] (8H LEZ + 2H ES.) - MODELLAZIONE E RISOLUZIONE DI UN PROBLEMA TRAMITE ELABORATORE. CONCETTO DI ALGORITMO. CARATTERISTICHE PRINCIPALI DEGLI ALGORITMI. RAPPRESENTAZIONI DEGLI ALGORITMI. MODELLAZIONE IN FORMA ALGORITMICA DI ATTIVITÀ QUOTIDIANE. - PROGRAMMAZIONE STRUTTURATA. STRUTTURE DI CONTROLLO: SEQUENZA, SELEZIONE SEMPLICE, SELEZIONE A DUE VIE, CICLO A CONDIZIONE INIZIALE, CICLO A CONDIZIONE FINALE. - FASI DEL PROCESSO DI PROGRAMMAZIONE. LINGUAGGI DI PROGRAMMAZIONE. ELEMENTI COSTITUTIVI. CLASSIFICAZIONE. CONCETTI DI ASSEMBLATORE E TRADUTTORE, DI COMPILATORE ED INTERPRETE. - CARATTERISTICHE DI UN SOFTWARE PER L'APPRENDIMENTO DELLA PROGRAMMAZIONE STRUTTURATA. [PROGRAMMAZIONE IN MATLAB] (20H LEZ) - INTRODUZIONE ALL’AMBIENTE ED AL LINGUAGGIO MATLAB. - INDICIZZAZIONE E OPERAZIONI ELEMENTARI ED ARITMETICHE SU ARRAY E MATRICI. - DECOMPOSIZIONE FUNZIONALE. FUNZIONI, CHIAMATA PER VALORE E PER RIFERIMENTO, FUNZIONI PREDEFINITE E DEFINITE DALL’UTENTE. M-FILE. GESTIONE DELL’INPUT/OUTPUT IN MATLAB. - OPERATORI RELAZIONALI E LOGICI. STRUTTURE DI CONTROLLO SELETTIVE E ITERATIVE. - GESTIONE DEI FILE IN MATLAB. - CREAZIONE E PERSONALIZZAZIONE DI GRAFICI IN MATLAB. - CENNI SU SIMULINK, DEBUGGING E RICORSIONE. [SVILUPPO DI ALGORITMI IN MATLAB] (20H ES.) - PROGETTAZIONE, SVILUPPO E TESTING DI ALGORITMI SU VETTORI E MATRICI: MINIMO, MASSIMO, TRASPOSTA DI UNA MATRICE, PRODOTTO SCALARE, PRODOTTO MATRICIALE. ALGORITMI DI RICERCA E DI ORDINAMENTO. - PROGETTAZIONE, SVILUPPO E TESTING DI ALGORITMI SU VETTORI E MATRICI PER LA RISOLUZIONE DI PROBLEMI “REAL LIFE”. [INTRODUZIONE ALLE BASI DI DATI ED AL LINGUAGGIO SQL] (10H LEZIONE FRONTALE) - INTRODUZIONE ALLE BASI DI DATI, AI DBMS, FASI DI PROGETTAZIONE DI UNA BASE DI DATI, MODELLO E-R. - INTRODUZIONE AL LINGUAGGIO SQL, DEFINIZIONE DI TABELLE, INTERROGAZIONI IN SQL, ISTRUZIONI AGGIORNAMENTO. - FUNZIONI DI AGGREGAZIONE, ALIAS IN SQL, RAGGRUPPAMENTI E RAGGRUPPAMENTI CON CONDIZIONI. [LINGUAGGIO SQL] (10H ESERCITAZIONE) - DEFINIZIONE DI TABELLE, REALIZZAZIONE DI SEMPLICI INTERROGAZIONI, DEFINIZIONE DI ISTRUZIONI DI AGGIORNAMENTO, RAPPRESENTAZIONE DI SEMPLICI SCHEMI E-R. |
Metodi Didattici | |
---|---|
IL CORSO PREVEDE LEZIONI IN AULE TRADIZIONALI ED ESERCITAZIONI PRATICHE SUGLI ARGOMENTI TRATTATI IN CLASSE. LE ESERCITAZIONI PREVEDONO LA RISOLUZIONE DI PROBLEMI ATTRAVERSO LA FORMULAZIONE DI ALGORITMI CHE VENGONO TRADOTTI IN MATLAB E TESTATI PER VERIFICARNE LA CORRETTEZZA. |
Verifica dell'apprendimento | |
---|---|
LA VERIFICA DEL RAGGIUNGIMENTO DEGLI OBIETTIVI PUÒ AVVENIRE IN DUE MODALITÀ: - DURANTE L'EROGAZIONE DEL CORSO (IN ITINERE) A) TRE PROVE INTRACORSO DI VERIFICA, DA SVOLGERE DURANTE IL PERIODO DELLE ATTIVITÀ DIDATTICHE. LA PRIMA PROVA INTRACORSO VERTERÀ SUGLI ARGOMENTI TRATTATI NELLA PRIMA PARTE DI PROGRAMMA SVOLTO DEL CORSO. LA SECONDA PROVA INTRACORSO VERTERÀ SU ESERCIZI PRATICI RELATIVI ALLO SVILUPPO DI UN PROGRAMMA IN MATLAB. LA TERZA PROVA INTRACORSO (PROVA DI FINE CORSO) VERTERÀ SULLE BASI DI DATI SUL LINGUAGGIO SQL. B) COLLOQUIO ORALE. DISCUSSIONE DELLA PROVA SCRITTA E DEL LISTATO FUNZIONANTE DEL PROGRAMMA IN MATLAB PRESENTATO DALLO STUDENTE AL COLLOQUIO. - APPELLI SUCCESSIVI A) PROVA SCRITTA, RELATIVA ALLO SVILUPPO DI UN PROGRAMMA IN MATLAB, SUGLI ARGOMENTI TRATTATI AL CORSO E SULLE BASI DI DATI. B) COLLOQUIO ORALE. LA DISCUSSIONE PARTIRÀ DAI CONTENUTI DELLA PROVA SCRITTA E DAL LISTATO FUNZIONANTE DEL PROGRAMMA IN MATLAB PRESENTATO DALLO STUDENTE AL COLLOQUIO. È CONDIZIONE ESSENZIALE PER IL RAGGIUNGIMENTO DELLA SUFFICIENZA LA CONOSCENZA DEI MECCANISMI ALLA BASE DEL FUNZIONAMENTO DI UN CALCOLATORE ELETTRONICO (MACCHINA DI VON NEUMANN), LA CAPACITÀ DI EFFETTUARE CONVERSIONI DI BASE TRA NUMERI RAPPRESENTATI IN NOTAZIONE POSIZIONALE (DECIMALE/BINARIO E VICEVERSA), LA CAPACITÀ DI RAPPRESENTARE NUMERI IN MODULO E SEGNO ED IN COMPLEMENTO A DUE, LA CAPACITÀ DI RAPPRESENTARE UNA FUNZIONE LOGICA MEDIANTE TAVOLA DI VERITÀ E CIRCUITO LOGICO, LA CAPACITÀ DI OPERARE SULLE STRUTTURE DATI PRINCIPALI DI MATLAB (ARRAY E MATRICI): IN PARTICOLARE, LO STUDENTE DOVRÀ ESSERE IN GRADO DI INDICIZZARE E MANIPOLARE TALI STRUTTURE E DOVRÀ DIMOSTRARE DI AVERE PADRONANZA CON LE PRINCIPALI FUNZIONI MATLAB CHE OPERANO SU MATRICI (MINIMO, MASSIMO, FUNZIONI DI RICERCA, ETC.), LA CAPACITÀ CREARE ED INTERPRETARE GRAFICI IN MATLAB. CONOSCENZE DI BASE SULLE BASI DI DATI (DEFINIZIONE DI BASI DI DATI E DBMS, ELEMENTI PRINCIPALI DEL MODELLO E-R, SEMPLICI INTERROGAZIONI IN LINGUAGGIO SQL, ISTRUZIONI DI AGGIORNAMENTO). LO STUDENTE RAGGIUNGE IL LIVELLO DI ECCELLENZA SE SI RIVELA IN GRADO DI AFFRONTARE CON CONSAPEVOLEZZA PROBLEMI INCONSUETI O NON ESPRESSAMENTE TRATTATI A LEZIONE. LA VOTAZIONE DIPENDERÀ DAL GRADO DI MATURITÀ ACQUISITO SUI CONTENUTI E GLI STRUMENTI METODOLOGICI ESPOSTI DEL CORSO, TENENDO CONTO ANCHE DELLA QUALITÀ DELL'ESPOSIZIONE SCRITTA E ORALE E DELL'AUTONOMIA DI GIUDIZIO DIMOSTRATA. |
Testi | |
---|---|
- DONATELLA SCIUTO, GIACOMO BUONANNO, LUCA MARI - INTRODUZIONE AI SISTEMI INFORMATICI V EDIZIONE, MCGRAW-HILL. - WILLIAM J. PALM III, MATLAB 7 PER L’INGEGNERIA E LE SCIENZE, MCGRAW-HILL. - MATERIALE AGGIUNTIVO: SLIDE E DISPENSE FORNITE DAL DOCENTE MEDIANTE IL SITO WEB DEL CORSO. CONOSCENZA E COMPRENSIONE CONOSCENZE SULL’ARCHITETTURA DEGLI ELABORATORI E COMPRENSIONE DELLA MODALITÀ DI FUNZIONAMENTO DI UN ELABORATORE ELETTRONICO, DELLA CODIFICA E RELATIVA RAPPRESENTAZIONE DELLE INFORMAZIONI, DEI COSTRUTTI FONDAMENTALI DELLA PROGRAMMAZIONE STRUTTURATA, DI VETTORI E MATRICI, DELLA RAPPRESENTAZIONE DEGLI ALGORITMI CON DIAGRAMMI A BLOCCHI, DELLA SINTASSI DEL LINGUAGGIO MATLAB E DEL SUO UTILIZZO PER LA REALIZZAZIONE DI ALGORITMI. CONOSCENZA DELLE FASI DI PROGETTAZIONE ED ANALISI DI UN PROGRAMMA. CONOSCENZA DI BASE DELLE PRINCIPALI CARATTERISTICHE DI UNA BASE DI DATI ED ELEMENTI DEL LINGUAGGIO SQL. CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE - ANALISI INGEGNERISTICA CAPACITÀ DI SVILUPPARE SEMPLICI ALGORITMI ATTRAVERSO LA SCOMPOSIZIONE IN SOTTO-PROBLEMI, RAPPRESENTANDO TALI ALGORITMI CON DIAGRAMMI A BLOCCHI. CAPACITÀ DI TRADURRE DETTI ALGORITMI IN LINGUAGGIO MATLAB MEDIANTE PROGRAMMAZIONE STRUTTURATA, CURANDO LA COMPRENSIBILITÀ DEI PROGRAMMI. SAPER INTERPRETARE E COMPRENDERE CODICE SCRITTO IN LINGUAGGIO MATLAB. CAPACITÀ DI PRODURRE E COMPRENDERE SEMPLICI INTERROGAZIONI A BASI DI DATI, IN LINGUAGGIO SQL. CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE – PROGETTAZIONE INGEGNERISTICA SAPER CODIFICARE SEMPLICI ALGORITMI UTILIZZANDO IL LINGUAGGIO MATLAB. CAPACITÀ DI VERIFICARE IL CORRETTO FUNZIONAMENTO DI PROGRAMMI MATLAB. SAPER PRODURRE E COMPRENDERE SEMPLICI INTERROGAZIONI IN LINGUAGGIO SQL, AL FINE DI OTTENERE INFORMAZIONI DA ESTRARRE DA UNA BASE DI DATI. AUTONOMIA DI GIUDIZIO – PRATICA INGEGNERISTICA SAPER SCEGLIERE ED UTILIZZARE I COSTRUTTI BASE DEL LINGUAGGIO MATLAB PER LA CODIFICA DI ALGORITMI. COMPRENDERE SEMPLICI INTERROGAZIONI SU BASI DI DATI, IN LINGUAGGIO SQL. CAPACITÀ TRASVERSALI - CAPACITÀ DI APPRENDERE IL CORSO MIRA A SVILUPPARE LA CAPACITÀ DI APPRENDIMENTO DEGLI STUDENTI CHE CONSENTA LORO DI AGGIORNARE IN AUTONOMIA, CONTINUAMENTE, LE PROPRIE CONOSCENZE E COMPETENZE, DI APPLICARE LE METODOLOGIE ACQUISITE IN AMBITI DIVERSI DA QUELLI INVESTIGATI DURANTE IL CORSO, UTILIZZANDO FONTI DI INFORMAZIONI DIVERSE DAI LIBRI DI TESTO ADOTTATI, QUALI INFORMAZIONI RECUPERABILI ONLINE. |
BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2019-10-21]