Seleziona l'Anno Accademico:     2015/2016 2016/2017 2017/2018 2018/2019 2019/2020 2020/2021
Docente
MATTEO FRASCHINI (Tit.)
Periodo
Primo Semestre 
Modalità d'Erogazione
Teledidattica 
Lingua Insegnamento
ITALIANO 



Informazioni aggiuntive

Corso Percorso CFU Durata(h)
[70/89]  INGEGNERIA ELETTRICA, ELETTRONICA E INFORMATICA [89/46 - Ord. 2016]  ELETTRICA ON LINE E IN PRESENZA (BLENDED) 6 36
[70/89]  INGEGNERIA ELETTRICA, ELETTRONICA E INFORMATICA [89/56 - Ord. 2016]  ELETTRONICA ON LINE E IN PRESENZA (BLENDED) 6 36
[70/89]  INGEGNERIA ELETTRICA, ELETTRONICA E INFORMATICA [89/66 - Ord. 2016]  INFORMATICA ON LINE E IN PRESENZA (BLENDED) 6 36

Obiettivi

Obiettivi
L'obiettivo principale del corso di Elementi di Informatica è quello di fornire allo studente gli strumenti necessari a comprendere i principi fondamentali dell’informatica e della programmazione in C.

Conoscenza e capacità di comprensione. Lo studente conoscerà i fondamenti dell'informatica come scienza che studia la codifica delle informazioni, gli algoritmi, i principi di funzionamento di sistemi informativi, le reti di calcolatori, e i fondamenti dei linguaggi di programmazione.

Capacità di applicare conoscenza e comprensione. Lo studente sarà in grado di comprendere l'organizzazione e la logica del funzionamento dei moderni sistemi informativi, di sviluppare algoritmi per la soluzione di problemi di media complessità e di codificarli in linguaggio C.

Autonomia di giudizio. Lo studente sarà in grado di interpretare, valutare ed esprimere giudizi autonomi in relazione a questioni legate ai principi fondamentali dell’informatica e della programmazione in C.

Abilità comunicative. Lo studente sarà in grado di comunicare informazioni, idee, problemi e soluzioni a interlocutori specialisti e non specialisti.

Capacità di apprendimento. Lo studente sarà in grado di apprendere metodologie avanzate e nuovi linguaggi di programmazione, applicando con flessibilità i concetti di base forniti nel corso.

Prerequisiti

Conoscenze di base di matematica e algebra. Dimestichezza con l'uso del calcolatore.

Contenuti


• Rappresentazione Binaria dei Numeri: naturali, interi, frazionari, reali.
• Codifica dei caratteri. Codifica delle immagini, dei suoni e dei video.
• Concetto di algoritmo, linguaggi, sistemi informatici. Applicazioni dell'informatica e sue aree disciplinari. Codifica degli algoritmi.
• Il nucleo del linguaggio C, primi esempi di C.
• I dati strutturati in C, costruzione dei programmi in C. S
• Struttura dei programmi C: dichiarazioni, variabili, costanti, istruzioni
• Classificazione dei tipi di dato.
• Tipi semplici predefiniti: int, float, double, char.
• Tipi semplici definiti dall'utente: ridefinizioni, enumerazioni.
• Tipi strutturati: vettori, struct, puntatori.
• Vettori, puntatori, aritmetica dei puntatori.
• Espressioni e problematiche della tipizzazione.
• Istruzioni di selezione: if-else, switch.
• Istruzioni cicliche: for, do-while.
• Le funzioni: definizione, chiamata, esecuzione. Passaggio dei parametri.
• Uso pratico dei sottoprogrammi. Funzioni di sistema, header, funzione scanf.
• La gestione della memoria dinamica: allocazione e de-allocazione di memoria in C
• Operazioni su file in C. Lettura e scrittura su e da file.
• Tipi di dato astratto.
• Nozioni di base sull'organizzazione di un calcolatore.
• Nozioni di base sull'organizzazione di un Sistema Operativo.
• Reti di calcolatori: Mezzi di trasmissione dei dati. Reti geografiche e locali, topologia delle reti. Struttura di messaggi e pacchetti, protocolli di comunicazione. Architetture e apparati di rete, sistemi distribuiti. Storia di Internet. I protocolli IP, TCP, UDP; il DNS. Il Word Wide Web, l'HTML, i motori di ricerca. Servizi di posta, audio e video. Cenni su Grid e Cloud computing.
• Introduzione alla sicurezza informatica: concetti base sulla sicurezza informatica. Attacchi informatici. Cenni di autenticazione e crittografia.

Metodi Didattici

Didattica interattiva: 6 ore.

Verifica dell'apprendimento

L'esame è articolato in una prova comprendente sia la parte di teoria che la parte di programmazione con linguaggio C.
La prova è effettuata in forma scritta, tramite domande a risposta aperta, a risposta multipla, risoluzione di esercizi di conversione tra formati binario, ottale, esadecimale, decimale. La parte di linguaggio C consiste nella scrittura di codice C, e/o nell'interpretazione di programmi C dati, e/o nella risposta a quesiti sul linguaggio C.
La prova scritta è obbligatoria. Una successiva prova orale sarà obbligatoria qualora lo studente riporti una votazione compresa tra 16 e 20 trentesimi, facoltativa per votazioni superiori al 20 trentesimi.
Nel caso in cui si sostenga la prova orale il voto finale sarà pesato con il 70% per la prova scritta e il 30% per la prova orale.

Testi

Bellini, Guidi. Linguaggio C. McGraw-Hill

Libri di consultazione:
Dennis M. Ritchie, Brian W. Kernighan, “Il linguaggio C - Principi di programmazione e manuale di riferimento”, Pearson, 2004 (ISBN: 9788871922003).
D. Mandrioli et al., "Informatica: arte e mestiere", Mc. Graw Hill Italia, Milano
E. Burattini et al., Che C serve? APOGEO
J. Glenn Brookshear, Fondamenti di Informatica e Programmazione in C. Pearson

Altre Informazioni

Ulteriori strumenti a supporto della didattica si trovano sul sito del docente https://matteogithub.github.io/teaching/ e sulla piattaforma Moodle di Ateneo (https://elearning.unica.it/course/view.php?id=65)
Tra essi si trovano:
- copia dei lucidi mostrati a lezione
- esercitazioni di conversione tra numeri in diversi formati con relativa soluzione
- esercitazioni C con relativa soluzione
- esempi di testi d'esame con soluzioni

Questionario e social

Condividi su: