logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2018/2019
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 091103 - INFORMATICA A
Docente Pelosi Gerardo
Cfu 10.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (1 liv.)(ord. 270) - BV (394) INGEGNERIA GESTIONALE*ACI091103 - INFORMATICA A

Obiettivi dell'insegnamento

Il corso intende dare una visione d'insieme delle potenzialità offerte dall'informatica e chiede agli studenti di comprendere e utilizzare i principi che stanno alla base di ogni futuro utilizzo di un calcolatore elettronico.
Il corso presenta, pertanto, gli aspetti fondamentali dell’informatica (algoritmi, programmi, architettura dei calcolatori e dei sistemi informatici) e introduce le nozioni basilari sulla programmazione dei calcolatori (linguaggi di programmazione, tecniche di astrazione, tipi di dati fondamentali e strutture di controllo, sottoprogrammi e ricorsione, strutture dati dinamiche), approfondendone in egual misura gli aspetti concettuali e sperimentali.

L’insegnamento si inserisce all’interno del percorso degli studi perseguendo alcuni degli obiettivi generali di apprendimento dichiarati. In particolare, l’insegnamento contribuisce allo sviluppo delle capacità di:

  • comprendere i principi scientifici ed ingegneristici fondamentali e la loro declinazione nelle principali tecnologie adottate in impresa;

  • progettare soluzioni applicando l’approccio scientifico ed ingegneristico (apprendimento, ragionamento e modellizzazione basati su una solida preparazione multidisciplinare) nell’affrontare problemi ed opportunità in ambito aziendale ed industriale.

Risultati di apprendimento attesi

A seguito del superamento dell’esame, lo studente:

  • conosce il modello architetturale dei calcolatori elettronici; le modalita' di rappresentazione dell'informazione: numerica, alfanumerica, di immagini, multimediale, algebra di Boole; concetto di algoritmo, programma, processo;
  • conosce il flusso di progettazione/sviluppo del codice; lessico e sintassi del linguaggio di programmazione C; modello di esecuzione di un programma in C (segmento di codice, dati e pila);
  • è in grado di applicare le conoscenze apprese per la risoluzione di problemi riuscendo a proporre una startegia di soluzione per gli stessi, modellazione dei dati necessari (propriamente rappresentati);
  • è in grado di applicare le conoscenze apprese per la stesura di un algoritmo per istruire un esecutore automatico per la realizzazione di una o piu' strategie di soluzione ad un problema dato, codifica dell'algoritmo nel linguaggio C e sua validazione a calcolatore;
  • è in grado di utilizzare il software di un ambiente integrato di sviluppo (editor, compiler, linker, loader) per codificare ed eseguire programmi in linguaggio C.

 


Argomenti trattati
Panoramica storica, definizione e contenuti dell'informatica. 
Risoluzione automatica di problemi: algoritmi (definizione), linguaggi di rappresentazione, programmi, "catena di programmazione".
Natura e rappresentazione dell'informazione (numerica, alfanumerica, di immagini, multimediale). Operatori logici fondamentali (operatori logici AND, OR, NOT).
Il calcolatore elettronico digitale programmabile. Struttura del calcolatore. Esecuzione delle istruzioni.
Aspetti fondamentali della programmazione (con riferimento al linguaggio C): il linguaggio di programmazione e le esigenze di astrazione, la sintassi dei linguaggi, struttura di un programma monomodulo, astrazione sui dati (concetto di tipo e tipi base del linguaggio, operatori e compatibilità, costruttori di tipo array, struct, puntatori), astrazione sul controllo dell’esecuzione (strutture di controllo condizionali, di selezione, iterative).
Sottoprogrammi e ricorsione: programmazione in piccolo e in grande, sottoprogrammi come astrazione sul controllo a livello di unità, passaggio dei parametri, dati locali, regole di visibilità, sviluppo top down per raffinamento, ricorsione, record di attivazione, pila.
Strutture dati persistenti: i file (concetti, operazioni, organizzazione logica), integrazione tra strutture dati in memoria centrale e su file.
Strutture dati dinamiche, liste collegate a puntatori.


Attività di laboratorio

L'attività di laboratorio ha lo scopo di rendere familiare allo studente sia l'utilizzo pratico del calcolatore sia i metodi e le tecniche utilizzate nella programmazione in linguaggio C.
Gli studenti sono divisi in 2 o più squadre che svolgono lo stesso lavoro in aule e/o orari diversi.
La frequenza del laboratorio non è obbligatoria, ma una frequenza continuativa assume particolare importanza per lo studente che, lavorando in piccoli gruppi, vuole imparare a risolvere esercizi semplici o complessi con l’uso del calcolatore.


Organizzazione del corso

Numero crediti complessivo per lezioni, esercitazioni, laboratorio = 10 crediti
Ripartizione dei crediti:
Lezioni = 54 ore = 6.75 crediti
Esercitazioni = 40 ore = 2.5 crediti
Laboratorio = 18 ore = 0.75 crediti


Prerequisiti

Nessuno


Modalità di valutazione

L'esame assegna 33 punti che corrispondono al voto massimo di 30 e lode.

Le prove scritte previste durante gli appelli d'esame sono organizzate in due parti: ParteA e ParteB.
In particolare, la ParteA verte sulla verifica delle conoscenze acquisite ed è incentrata sulle nozioni relative all'intero programma del corso.
La ParteB verte sulla verifica delle capacità progettuali acquisite, ed è incentrata sulle tecniche apprese durante l'intero programma del corso.

Durante le prove non è consentito consultare libri, appunti e/o far uso di dispositivi elettronici (incluse calcolatrici, tablet, smartphone).
Il conseguimento di un punteggio sufficiente nella ParteA è obbligatorio per il superamento dell'esame e consente di veder valutata la ParteB del proprio elaborato.
Una prova è considerata valida se si ottiene un punteggio di almeno 18 punti.

 


Bibliografia
Risorsa bibliografica facoltativaDino Mandrioli, Stefano Ceri, Licia Sbattella, Paolo Cremonesi e Gianpaolo Cugola, Informatica: arte e mestiere 4/ed, Editore: McGraw-Hill, Anno edizione: 2014, ISBN: 9788838668487
Risorsa bibliografica facoltativaAlessandro Bellini, Andrea Guidi, Linguaggio C 4/ed Guida alla programmazione, Editore: McGraw-Hill, Anno edizione: 2009, ISBN: 9788838665790
Risorsa bibliografica facoltativaKim N. King (Autore), Programmazione in C, Editore: Apogeo Education, Anno edizione: 2009, ISBN: 9788838785825
Risorsa bibliografica facoltativaD.Braga D.Martinenghi, FONDAMENTI DI INFORMATICA , Editore: Societ Editrice Esculapio, Anno edizione: 2009, ISBN: 9788874883394
Risorsa bibliografica facoltativaC. Belletini (Autore), S. Filippi (Autore), L. Sbattella (Autore), Linguaggio C. Esercizi e temi d'esame risolti, Editore: Esculapio; 2 edizione, Anno edizione: 2000, ISBN: 9788874887026

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
53:00
79:30
Esercitazione
39:00
58:30
Laboratorio Informatico
18:24
1:36
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
0:00
Totale 110:24 139:36

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Italiano
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
schedaincarico v. 1.6.1 / 1.6.1
Area Servizi ICT
14/12/2019