Laurea in Informatica musicale (Università degli Studi di Milano)
Questo insegnamento spiega tecniche di base di programmazione procedurale utilizzando il linguaggio C.
Avvisi
Data | Informazione |
---|---|
03/07/2012 |
Dettagli sulla prova scritta di Programmazione 1 del 5/7/2012 L'esame scritto del 5/7 si svolgerà nell'aula beta a partire dalle ore 14:30. |
14/06/2012 |
Esiti della prova scritta di Programmazione 1 del 13/06/2012 Sono disponibili gli esiti della prova scritta del 13/06. |
11/06/2012 |
Dettagli sulla prova scritta di Programmazione 1 del 13/6 L'esame scritto del 13/6 si svolgerà nell'aula beta a partire dalle ore 8:30. |
05/06/2012 |
Sospensione del ricevimento studenti Il ricevimento studenti su base regolare è sospeso fino al prossimo semestre. Gli studenti possono contattare il docente per un ricevimento su appuntamento. |
22/03/2012 |
Sospensione ricevimento studenti A causa della prossima riunione del Consiglio di Facoltà e delle vacanze di Pasqua il ricevimento studenti fino al 13/4 si svolgerà su appuntamento. |
19/03/2012 |
Sospensione del ricevimento studenti Il ricevimento studenti del 21/03 è sospeso. Gli studenti possono contattare il docente per un ricevimento su appuntamento. |
05/03/2012 |
Sessione orale alternativa per l'appello di febbraio di Programmazione 1 È prevista un'ulteriore sessione per gli esami orali di febbraio (sia per la parte di laboratorio che per quella di teoria), che si svolgerà giovedì 8 marzo a partire dalle 11:30 nella sala riunioni al primo piano del Dipartimento di Scienze dell'Informazione (Via Comelico 39). Gli studenti che intendono sostenere l'esame in tale data devono avvisare il docente tramite posta elettronica. |
03/03/2012 |
Esiti della prova scritta di Programmazione 1 del 29/02/2012 Sono disponibili gli esiti della prova scritta del 29/02. |
21/02/2012 |
Sospensione del ricevimento studenti Il ricevimento studenti del 29/02 e del 07/03 è sospeso. Gli studenti possono contattare il docente per un ricevimento su appuntamento. |
21/02/2012 |
Dettagli per la prova scritta di Programmazione 1 del 29/02 La prova scritta di mercoledì 29/02 si svolgerà a partire dalle 13:30 nell'aula G08 di via Golgi. |
20/02/2012 |
Orario di ricevimento per il secondo semestre L'orario di ricevimento studenti per il secondo semestre si svolgerà il martedì dalle 14:30 alle 16:00. |
01/02/2012 |
Correzione della prova scritta di Programmazione 1 del 23/1 Al termine delle prove orali di giovedì 2/2 sarà corretta la prova scritta del 23/1. |
30/01/2012 |
Prove orali di Programmazione 1 per l'appello di gennaio Gli esami orali per l'appello di gennaio si svolgeranno a partire dalle 9:30 di giovedì 2 febbraio presso le aule 5 e 6 del Dipartimento di Scienze dell'Informazione. Si ricorda che per poter essere ammessi all'orale è necessario avere: 1. ottenuto la sufficienza nella prova di laboratorio del 31 gennaio (i risultati saranno pubblicati poco dopo il termine della prova), e 2. ottenuto la sufficienza nella prova scritta del 23 gennaio o nelle prove di valutazione intermedie svolte durante il primo semestre. |
26/01/2012 |
Esiti della prova scritta di Programmazione 1 del 23/01/2012 Sono disponibili gli esiti della prova scritta del 23/01. |
19/01/2012 |
Esiti della seconda prova di valutazione intermedia di Programmazione 1 del 18/01/2012 Sono disponibili gli esiti della prova di valutazione intermedia del 18/01. |
18/01/2012 |
Sospensione del ricevimento studenti Il ricevimento studenti del 19/01 è sospeso. Gli studenti possono contattare il docente per un ricevimento su appuntamento. |
16/01/2012 |
Prova scritta di Programmazione 1 del 23/01/2012 La prova scritta di lunedì 23/01 si svolgerà a partire dalle 8:30 nell'aula beta. |
15/01/2012 |
Seminario sugli strumenti per la programmazione in C Si segnala agli studenti il seminario sugli strumenti utili alla programmazione in C che il Dr. Santini terrà martedì 17/01 in aula V9 a partire dalle 10:30. |
11/01/2012 |
Spostamento del ricevimento studenti Il ricevimento studenti di questa settimana si svolgerà venerdì 13 alle 10:30. |
22/12/2011 |
Seconda prova di valutazione intermedia di Programmazione 1 La seconda prova di valutazione intermedia si svolgerà mercoledì 18/01 a partire dalle 8:30 nell'aula beta. |
22/12/2011 |
Spostamento lezione di Programmazione 1 del 12/01 La lezione di giovedì 12/01 è spostata a martedì 17/01. |
22/12/2011 |
Modifica orario del ricevimento studenti Il ricevimento studenti odierno è spostato alle 16:30 |
24/11/2011 |
Annullamento lezione di Programmazione 1 del 6/12 La lezione del 6/12 è annullata. |
24/11/2011 |
Esiti della prima prova di valutazione intermedia di Programmazione 1 del 16/11/2011 Sono disponibili gli esiti della prova di valutazione intermedia del 16/11. |
03/11/2011 |
Prima prova di valutazione intermedia di Programmazione 1 La prima prova di valutazione intermedia si svolgerà mercoledì 16 novembre. È richiesta l'iscrizione alla prova tramite i terminali SIFA |
03/10/2011 |
Sospensione del ricevimento studenti Il ricevimento studenti del 6/10 è sospeso. Gli studenti possono contattare il docente per un ricevimento su appuntamento. |
20/09/2011 |
Inizio delle lezioni di Programmazione 1 Le lezioni di teoria e di laboratorio inizieranno rispettivamente a partire da martedì 4 ottobre e da venerdì 14 ottobre.. |
Lingua
Le lezioni sono in italiano.
Orari del corso
Le lezioni si svolgeranno secondo il seguente orario:
Giorno | Ora | Luogo |
---|---|---|
martedì | 8:30 - 10:30 | aula 204 (via Celoria) |
mercoledì | 8:30 - 10:30 | aula beta (via Comelico) |
giovedì | 12:30 - 14:30 | aula beta (via Comelico) |
Eventuali variazioni rispetto al calendario pianificato verranno comunicate in aula e pubblicizzate nel paragrafo Avvisi di questa pagina. In particolare, in alcuni casi la lezione del martedì si svolgerà dalle 8:30 alle 11:30.
Al corso è associato un laboratorio che si svolgerà ogni venerdì dalle 8:30 alle 12:30 nell'aula sigma dei dipartimenti di informatica di Via Comelico. Si rimanda al sito web corrispondente per ulteriori informazioni.
Ricevimento studenti
Su appuntamento, stanza 5015 del Dipartimento di Informatica.
È possibile contattare il docente tramite posta elettronica, avendo cura di leggere preventivamente la guida predisposta dal Prof. Sebastiano Vigna e di specificare chiaramente nell'oggetto del messaggio il nome dell'insegnamento e l'anno accademico. In particolare, si invitano gli studenti a usare sempre come mittente l'indirizzo fornito loro dall'Ateneo (basato cioè sul dominio studenti.unimi.it
) firmando con nome, cognome e matricola e ricordando che i tempi di risposta possono variare in funzione degli impegni del docente.
Materiale didattico
Il corso è basato sul seguente materiale:
- il libro di testo: C Programming -- A Modern Approach, second edition, di K. N. King, edito da W. W. Norton (ISBN 978-0-393-97950-3), corredato da una homepage contenente un errata corrige, il codice sorgente degli esempi e la soluzione di alcuni esercizi. È disponibile anche la traduzione in lingua italiana (K. N. King, Programmazione in C, Apogeo, 2009, ISBN 9-788-85032869-7) che però contiene diversi errori dovuti principalmente a un editing trascurato durante la traduzione (è disponibile un elenco degli errori curato dal Dr. Massimo Santini);
- le dispense sulla parte di architettura e logica booleana curate dal Prof. Paolo Boldi.
Si consiglia inoltre la lettura dei seguenti testi di approfondimento:
- il volume Il linguaggio C, di Brian Kernighan e Dennis M. Ritchie, edito da Pearson Education Italia, Milano (ISBN: 887192200X);
- il volume Programmazione nella pratica, di Brian Kernighan e Rob Pike, edito da Pearson Education Italia, Milano (ISBN: 8871920724);
- il volume Programming Pearls di Jon Bentley, edito da Addison-Wesley (ISBN: 0201657880).
Programma
Il programma riguarda gli argomenti dettagliati nel calendario delle lezioni, che corrisponde al materiale trattato sulle dispense e sul libro di testo nei capitoli da 1 a 17 (escluso il paragrafo 12.4), e nel capitolo 22.
Calendario delle lezioni
Data | Argomento |
---|---|
04/10/2011 | Introduzione al laboratorio e basi di architettura degli elaboratori |
05/10/2011 | Rappresentazione dell'informazione |
12/10/2011 | Rappresentazione dell'informazione |
13/10/2011 | Linguaggi, interpreti, compilatori e primi programmi in C |
18/10/2011 | Algebra Booleana e circuiti |
19/10/2011 | I/O formattato ed espressioni |
20/10/2011 | Strutture di selezione |
25/10/2011 | Strutture di iterazione |
26/10/2011 | Strutture di iterazione |
27/10/2011 | Strutture di iterazione |
02/11/2011 | Riepilogo sulle strutture di controllo |
03/11/2011 | Tipi elementari |
08/11/2011 | Array |
09/11/2011 | Array |
10/11/2011 | Funzioni e struttura dei programmi |
15/11/2011 | Funzioni e passaggio dei parametri |
16/11/2011 | Valutazione intermedia |
17/11/2011 | Correzione della valutazione intermedia |
22/11/2011 | Organizzazione dei programmi |
23/11/2011 | Puntatori |
24/11/2011 | Aritmetica dei puntatori |
29/11/2011 | Stringhe |
30/11/2011 | Stringhe, array di stringhe e puntatori a puntatori |
01/12/2011 | Algoritmi di ordinamento |
13/12/2011 | Algoritmi di ricerca |
14/12/2011 | Ricorsione |
15/12/2011 | Preprocessore e programmi di grandi dimensioni |
20/12/2011 | Strutture, unioni e enumerazioni |
21/12/2011 | Allocazione dinamica della memoria |
22/12/2011 | Liste |
10/01/2012 | I/O e file |
11/01/2012 | Uso di file e tipi di dati astratti |
17/01/2012 | Tipi di dati astratti |
Modalità d'esame
L'esame consta di tre prove: una scritta, una in laboratorio e una orale. Le tre prove devono essere sostenute nel medesimo appello (vedi oltre per le eccezioni che riguardano gli appelli di gennaio e febbraio e le valutazioni intermedie) conseguendo in ognuna una valutazione sufficiente. La media dei voti conseguiti nelle prove scritta e di laboratorio (pesata in funzione dei CFU corrispondenti) rappresenta il punteggio di partenza per la prova orale. Gli studenti devono essere consapevoli del fatto che la valutazione della prova orale può causare sia un innalzamento che un abbassamento di tale punteggio, anche eventualmente invalidando la sufficienza.
Gli studenti che vogliano sostenere l'esame a un dato appello devono iscriversi al SIFA (tramite il @SIFA on-line, o recandosi presso gli appositi chioschi), sia per il laboratorio che per lo scritto. Questo vale per tutti gli appelli, comprese le valutazioni intermedie.
Valutazioni intermedie
Durante il corso si terranno due prove di valutazione intermedie (il 16 novembre e, indicativamente, a fine gennaio). Gli studenti che vogliano sostenere l'esame a gennaio o febbraio e che abbiano ottenuto la sufficienza in entrambe le prove sono esentati dalla prova scritta (la media dei voti dei compitini sostituisce il voto dello scritto). Gli studenti possono in ogni caso sostenere le prova scritta anche avendo ottenuto la sufficienza nelle valutazioni intermedie, tenendo presente che in tal caso queste ultime vengono invalidate.
Salto di appello
Gli studenti che in una prova scritta conseguano una valutazione nettamente inferiore alla votazione media per quell'appello non potranno sostenere alcuna prova nell'appello successivo.
Studenti di Informatica per le telecomunicazioni
Gli studenti iscritti al corso di Laurea in Informatica per le telecomunicazioni possono sostenere l'esame di Programmazione effettuando una prova orale presentandosi agli appelli scritti dell'insegnamento di Programmazione per il corso di Laurea in Informatica musicale. È in ogni caso richiesta l'iscrizione all'appello.
Appelli d'esame
Sessione | Data | |
---|---|---|
novembre (valutazione intermedia) | 16/11/2011 | Esiti |
gennaio (valutazione intermedia) | 18/01/2012 | Esiti |
gennaio | 23/01/2012 | Esiti |
febbraio | 29/02/2012 | Esiti |
giugno | 13/06/2012 | Esiti |
luglio | 05/07/2012 | convertito in orale a causa di un basso numero di partecipanti |
settembre | 20/09/2012 | convertito in orale a causa di un basso numero di partecipanti |