programmaFondInfI - Dipartimento di Ingegneria dell`Informazione

Università di Firenze, Facoltà di Ingegneria
Corso di Laurea in Ingegneria Informatica
Fondamenti di Informatica I
Programma del Corso - A.A. 2008/2009 (270: 9 CFU)
Prof. Enrico Vicario
PARTE I: RAPPRESENTAZIONE DI BASSO LIVELLO
Rappresentazione dei dati: interi senza e con segno, valori in virgola mobile, caratteri;
Rappresentazione delle istruzioni: assembler, linguaggio macchina, esecuzione su un processore;
Compilazione, assemblaggio e collegamento.
PARTE II: RAPPRESENTAZIONE DI ALTO LIVELLO
Definizione di un linguaggio: sintassi, grammatica, albero sintattico, BNF, semantica;
Linguaggio c: tipi variabili e costanti, Operatori ed espressioni, Puntatori, Array, Istruzioni,
Funzioni, dati strutturati;
PARTE III: STRUTTURE DATI
Liste: rappresentazione in forma sequenziale, collegata con arrays e indici, collegata con puntatori;
Iterazione e ricorsione;
PARTE IV ALGORITMI ELEMENTARI
Costo di esecuzione e complessità;
Algoritmi di ricerca: sequenziale, binaria, a salti;
Algoritmi di ordinamento: sequential sort, bubble-sort, merge-sort, quicksort, heapsort.
Complessità di un problema: il caso dell'ordinamento.
TESTI DI RIFERIMENTO
Enrico Vicario, "Fondamenti di Programmazione," Editrice Esculapio, Bologna
(sezioni 1, 2.1, 2.3, 2.4, 2.5, 2.6, 2.7).
Esercizi di esame disponibili sulla pagina www.dsi.unifi.it/~vicario.
Università di Firenze, Facoltà di Ingegneria
Corso di Laurea in Ingegneria Informatica
Fondamenti di Informatica I
Programma del Corso – A.A. 2007/2008 e precedenti (509.6: 6 CFU)
Prof. Enrico Vicario
PARTE I: RAPPRESENTAZIONE
Definizione di un linguaggio: sintassi, grammatica, albero sintattico, BNF, semantica;
Linguaggio c: tipi variabili e costanti, Operatori ed espressioni, Puntatori, Array, Istruzioni,
Funzioni, dati strutturati;
PARTE II: STRUTTURE DATI E ALGORITMI ELEMENTARI
Liste: rappresentazione in forma sequenziale, collegata con arrays e indici, collegata con puntatori;
Iterazione e ricorsione;
Costo di esecuzione e complessità;
Algoritmi di ricerca: sequenziale, binaria, a salti;
Algoritmi di ordinamento: sequential sort, bubble-sort, merge-sort, quicksort.
Complessità di un problema: il caso dell'ordinamento.
TESTI DI RIFERIMENTO
Enrico Vicario, "Fondamenti di Programmazione," Editrice Esculapio, Bologna
(sezioni 1.1, 1.4, 1.5, 2.1, 2.3, 2.4, 2.5.1, 2.5.2, 2.5.3, 2.5.4, 2.6, 2.7).
Esercizi di esame disponibili sulla pagina www.dsi.unifi.it/~vicario.
Università di Firenze, Facoltà di Ingegneria
Corso di Laurea in Ingegneria Biomedica
Fondamenti di Programmazione dei Calcolatori
Programma del Corso – A.A. 2008/2009 e precedenti (509: 4 CFU)
Prof. Enrico Vicario
PARTE I: RAPPRESENTAZIONE
Definizione di un linguaggio: sintassi, grammatica, albero sintattico, BNF, semantica;
Linguaggio c: tipi variabili e costanti, Operatori ed espressioni, Puntatori, Array, Istruzioni,
Funzioni, dati strutturati;
PARTE II: STRUTTURE DATI E ALGORITMI ELEMENTARI
Liste: rappresentazione in forma sequenziale, collegata con puntatori;
Iterazione e ricorsione;
Costo di esecuzione e complessità;
Algoritmi di ricerca: sequenziale, binaria;
Algoritmi di ordinamento: sequential sort, bubble-sort, merge-sort, quicksort.
TESTI DI RIFERIMENTO
Enrico Vicario, "Fondamenti di Programmazione," Editrice Esculapio, Bologna
(sezioni 1.1, 1.4, 1.5, 2.1, 2.3, 2.4.1, 2.4.2, 2.4.4, 2.5.1, 2.5.2, 2.5.3, 2.5.4 (escluso il costo medio),
2.7, esercizi fino a 2.7.20).
Esercizi di esame disponibili sulla pagina www.dsi.unifi.it/~vicario.