Elenco Lezioni, Argomenti e Riferimenti


 
Data
Ora
Argomento
LUN 26/9/16
9-11
Presentazione del corso
Introduzione all'informatica e centralità del concetto di algoritmo. Lucidi
MAR 27/9/16
9-11
Introduzione all'informatica: alcuni esempi di algoritmi. Lucidi
L'hardware del calcolatore (I parte). Lucidi
MER 28/9/16
14-16
L'hardware del calcolatore (II parte). Lucidi
Cenni allo stato, alle variabili e alla memoria.
GIO 29/9/16
14-16
Introduzione al C: panoramica del linguaggio. Struttura di un programma C. Dal sorgente all'eseguibile: in particolare preprocessing e compilazione. I passi della compilazione (GCC) [Vedi Link utili ]. Il primo programma in C: "Ciao mondo!". (Vedi B. W. Kerninghan, D. M. Ritchie. Linguaggio C)
Alcuni esercizi
LUN 3/10/16
9-11
Introduzione a UNIX (storia e caratteristiche). Accenni alla struttura del file system. Cosa è la shell. Rassegna sui principali comandi UNIX.
Alcuni esercizi
MAR 4/10/16
9-11
Concetti di base della programmazione in C: stato, espressioni, assegnamento, input, output, istruzioni di controllo condizionali e ripetitive.
Lucidi
MER 5/10/16
14-16
Alcuni esempi di algoritmi. Diagrammi di flusso. Che cosa è la programmazione strutturata.
Lucidi
GIO 6/10/16
14-16
Introduzione al C: tipi di dato in C, ovvero int, char, float, double; signed/unsigned/long. Operatori aritmetici e relazionali. Funzioni di input e di output: printf e scanf. Costrutti If e Switch. (Vedi B. W. Kerninghan, D. M. Ritchie. Linguaggio C)
Piattaforma di autovalutazione
LUN 10/10/16
9-11
Primo laboratorio in C: primi programmi.
MAR 11/10/16
9-11
Introduzione al C: ripresa dei principali concetti introdotti. Istruzioni iterative.
MER 12/10/16
14-16
Esercitazione su istruzioni condizionali e istruzioni iterative.
Lucidi
GIO 13/10/16
14-16
Introduzione al C: array monodimensionali.
LUN 17/10/16
9-11
Secondo laboratorio in C: istruzioni iterative e array monodimensionali.
MAR 18/10/16
9-11
Rappresentazione dell'informazione (cenni).
Lucidi
Esercitazione su istruzioni iterative e array monodimensionali (I parte).
MER 19/10/16
14-16
Il software: in particolare sistema operativo.
Lucidi
Esercitazione su istruzioni iterative e array monodimensionali (II parte).
Lucidi
GIO 20/10/16
14-16
Introduzione al C: funzioni (incluse rand(), getchar() e putchar()). Regole di visibilità delle variabili. Gestione della memoria virtuale a tempo di esecuzione: stack e record di attivazione.
LUN 24/10/16
9-11
Terzo laboratorio in C: istruzioni iterative, array e funzioni.
Utilizzare la Piattaforma di autovalutazione per accedere agli esercizi da fare e per il loro controllo automatico (il controllo di ciascun esercizio va fatto ovviamente dopo averne compilato ed eseguito il codice, a parte).
MAR 25/10/16
9-11
Breve introduzione alla Semantica Operazionale.
Lucidi
MER 26/10/16
14-16
Introduzione al C: funzioni, regole di visibilità e gestione della memoria con record di attivazione.
Lucidi
Ricorsione
Lucidi
Qualche esercizio sulla ricorsione.
GIO 27/10/16
14-16
Introduzione ai linguaggi regolari e agli automi: Automi a Stati Finiti Deterministici (parte 1). [Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 1, Sezione 5] (vedi Lucidi 3 novembre)
LUN 31/10/16
9-11
Lezione non tenuta.
MAR 1/11/16
9-11
Festa.
MER 2/11/16
14-16
Automi a Stati Finiti Deterministici (parte 2) con piccola esercitazione e introduzione agli Automi a Stati Finiti Non Deterministici (parte 1). (vedi Lucidi 3 novembre)
GIO 3/11/16
14-16
Automi a Stati Finiti Non Deterministici (parte 2) con piccola esercitazione e introduzione agli Automi a Stati Finiti con epsilon transizioni.
Lucidi [Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 2]
LUN 7/11/16
9-11
Quarto laboratorio in C: ricorsione e esercizi di riepilogo sulla prima parte del C.
MAR 8/11/16
9-11
Espressioni regolari.
Lucidi [Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 3]
MER 9/11/16
14-16
Introduzione al C: variabile puntatore con dichiarazione e operatori. Aritmetica dei puntatori. Puntatori e array. Allocazione dinamica della memoria: heap, funzioni malloc(), calloc(), realloc() e free().
GIO 10/11/16
14-16
Introduzione al C: passaggio dei parametri per riferimento nelle funzioni, tramite puntatori.
Lucidi
Possibili problemi con l'allocazione dinamica della memoria: riferimenti pendenti (dangling pointers), cattivo uso della free(), persistenza delle variabili.
Esercitazione sulla ricorsione in C.
LUN 14/11/16
9-11
Quinto laboratorio in C: puntatori e allocazione dinamica della memoria.
MAR 15/11/16
9-11
Proprietà dei linguaggi regolari: pumping lemma, proprietà di chiusura.
Lucidi [Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 4]
MER 16/11/16
14-16
Algoritmi di ordinamento. Lucidi
GIO 17/11/16
14-16
Equivalenza e minimizzazione di automi.
Lucidi [Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 4]
LUN 21/11/16
9-11
Sesto laboratorio in C: ancora su puntatori e allocazione dinamica della memoria.
MAR 22/11/16
9-10
Introduzione alle grammatiche libere dal contesto (I parte).
(vedi Lucidi 30 novembre)
[Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 5]
[La seconda ora di lezione non viene effettuata, come deciso dal Senato Accademico, al fine di consentire agli studenti un momento di confronto nel contesto di un'assemblea, in previsione del referendum costituzionale.]
MER 23/11/16
14-16
Introduzione al C: tipi definiti dall'utente, struct e introduzione alle liste collegate. (vedi Lucidi 24 novembre).
GIO 24/11/16
14-16
Introduzione al C: operazioni su liste collegate.
Lucidi
LUN 28/11/16
9-11
Settimo laboratorio in C: strutture e liste concatenate.
Esercizi di oggi.
MAR 29/11/16
9-10
Introduzione al C: gli alberi e la loro rappresentazione collegata.
Lucidi
Introduzione alle grammatiche libere dal contesto (II parte).
[Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 5] (vedi Lucidi 30 novembre)
MER 30/11/16
14-16
Introduzione alle grammatiche libere dal contesto (III parte).
[Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 5]
Lucidi
GIO 1/12/16
14-16
Esercitazione sulla ricorsione in C.
LUN 5/12/16
9-11
Sospensione delle attività didattiche, decisa dal Senato Accademico in previsione del referendum costituzionale, al fine di agevolare gli studenti fuori sede nell'esercizio del diritto di voto.
MAR 6/12/16
9-10
Proprietà dei linguaggi liberi: pumping lemma, proprietà di chiusura.
Lucidi
[Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Cap. 7]
Cenni alla gerarchia di Chomsky.
Lucidi
[Automi, linguaggi e calcolabilità, J. E. Hopcroft, R. Motwani, and J. D. Ullman: Appendice]
Cenni alle librerie C (stdio.h, stdlib.h, math.h, string.h) e alla gestione delle stringhe in C (in particolare le funzioni scanf, fgets, strlen, strcmp, strcpy, strcat, strtok).
MER 7/12/16
14-16
Minitest.
LUN 12/12/16
9-11
Prova di verifica sommativa.
MAR 13/12/16
9-10
Non tenuta.
MER 14/12/16
11-13
Dischi, file system e input/output.
Lucidi
GIO 15/12/16
14-16
Esercitazione di ripasso su C e su grammatiche.
LUN 19/12/16
9-11
Esercitazione su tutto il programma