LIA - DEIS - Facoltà di Ingegneria - Università di Bologna
Fondamenti di Informatica L-A

Corsi di laurea in Ing. Elettronica e Ing. delle Telecomunicazioni - A.A. 2006/2007

Obiettivi e programma

Obiettivi

Conoscenze e abilità da conseguire

Programma

Percorso didattico

Prerequisiti

Non sono richiesti particolari prerequisiti.

Calendario delle lezioni in aula

Lez.
Data
Ora
Aula
Argomento
Materiale
1
26/9/2006 (Martedì)
11-14
6.2
Presentazione del corso. Gli algoritmi: proprietà fondamentali.
2
27/9/2006 (Mercoledì)
11-14
2.3
Diagrammi di flusso. Il computer. Hardware e software. La tecnologia digitale. Memorie di massa. Funzioni del sistema operativo.
3
3/10/2006 (Martedì)
11-14
6.2
Ambienti di programmazione. Linguaggi di programmazione. Alfabeto, sintassi e semantica. Il formalismo BNF.
4
11/10/2006 (Mercoledì)
11-14
2.3
Introduzione al linguaggio C. Variabili, costanti, tipi di dato.Tipo int, qualificatori e quantificatori, operatori. Espressioni booleane.
In laboratorio (11-12 ottobre): I/O con formato - scanf e printf.
5
17/10/2006 (Martedì)
11-14
6.2
Tipi di dato char, float e double. Introduzione alla programmazione strutturata. Teorema di Böhm-Jacopini. Istruzione composta. Istruzioni di alternativa: if e switch. Cicli while, do...while e for.
6
18/10/2006 (Mercoledì)
11-14
2.3
Overloading e conversioni di tipo. Istruzioni di assegnamento e incremento. Operatori: precedenza e associatività. Istruzione di alternativa switch. Istruzioni per il trasferimento del controllo: break e continue.
7
24/10/2006 (Martedì)
11-14
6.2
Tipi strutturati: vettori, matrici e stringhe.
8
25/10/2006 (Mercoledì)
11-14
2.3
Architettura di Von Neumann. CPU, memoria, bus, I/O. Il ciclo fetch-decode-execute. Gerarchia delle memorie. Linguaggi di programmazione di basso livello.
31/10/2006 (Martedì)
11-14
6.2
Prova scritta (prima prova parziale)
9
7/11/2006 (Martedì)
11-14
6.2
Tipi strutturati: record e tabelle. Introduzione ai puntatori.
10
8/11/2006 (Mercoledì)
11-14
2.3
Puntatori e variabili dinamiche. Vettori e puntatori. Operatori aritmetici. Problemi collegati all'uso dei puntatori.
11
14/11/2006 (Martedì)
11-14
6.2
Funzioni e procedure. Il modello cliente-servitore. Binding e visibilità.
12
15/11/2006 (Mercoledì)
11-14
2.3
Passaggio dei parametri. Passaggio per valore e per riferimento. Dereferencing. Vettori come parametri di funzioni.
13
21/11/2006 (Martedì)
11-14
6.2
Effetti collaterali nelle funzioni. Visibilità e tempo di vita delle variabili. Il modello a run-time: lo stack. Spazio di indirizzamento. La ricorsione. Processi computazionalmente iterativi processi computazionalmente ricorsivi.
14
22/11/2006 (Mercoledì)
11-14
2.3
Esercizi su puntatori, funzioni, ricorsione.
15
27/11/2006 (Lunedì)
14-17
0.2
I file. Accesso ai file di testo. Lettura/scrittura con formato. File binari. Lettura/scrittura di blocchi.
16
29/11/2006 (Mercoledì)
11-14
2.3
Esercizi sui file.
17
5/12/2006 (Martedì)
11-14
6.2
Considerazioni sul progetto di soluzioni software. Consigli per la preparazione al compito.
18
6/12/2006 (Mercoledì)
11-14
2.3
Esercizi di preparazione al compito.