Insegnamento di Informatica, corso di laurea in Ing. Chimica

Lezioni svolte in aula

Per ogni lezione, all'interno della descrizione sono inclusi (ove e' il caso) i link ai programmi presentati durante la lezione. (alcuni di questi programmi, comunque, sono spostati nell'area delle esercitazioni autoguidate).

LEZIONE 1: 15/10/2002 Lezione introduttiva. Concetto di algoritmo. Principi di progettazione dei programmi. Introduzione all'architettura di un calcoltore.
LEZIONE 2: 17/10/2002 Architettura dell'elaboratore; modello di Von Neumann. Rappresentazione delle informazioni nel calcolatore.
Istruzione macchina e linguaggio macchina (LM). Un programma in LM.
LEZIONE 3: 22/10/2002 Funzionamento elementare dell'elaboratore (esecuzione di un programma in LM).
Caricamento in memoria centrale (Loading) di un programma eseguibile.
Linguaggi a basso livello e linguaggi a piu' alto livello. Assembly e assemblatore. Compilatore.
Concetto di variabile nel linguaggi ad alto livello.
LEZIONE 4: 24/10/2002 Esecuzione simulata di un programma in linguaggio ad alto livello (C).
Componenti di un programma: dichiarazioni, istruzione di assegnazione, chiamata di funzione, espressioni.
Concetto di funzione.
LEZIONE 5: 29/10/2002 Inclusione di file header (stdio.h).
Nozioni sul software di base nei sistemi di elaborazione; sistema operativo e file system.
Cenni sulla compilazione. Linking (correlazione) e Loading (caricamento).
Diagrammi di flusso. Espressioni. Approccio ai tipi di dato in C.
Funzioni di I/O: printf e scanf.
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 30/10/2002 Prima esercitazione autoguidata (ea1).
LEZIONE 6: 31/10/2002 Esercizi (capitale, dalla ea1).
Operatori nelle espressioni e loro precedenza. Operatori di incremento e decremento e loro peculiarita'.
Overloading (sovraccaricamento) e coercion (forzatura) nella valutazione delle espressioni.
LEZIONE 7: 5/11/2002 assegnazione come operatore; Esercizio moquette.
Diramazioni del flusso di controllo per ottenere costrutti iterativi e condizionali. Costrutto condizionale.
Condizione logica e sua valutazione.
Istruzione if. Istruzione if-else. INVERSO.C If annidati e blocco di istruzioni.
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 6/11/2002 Seconda esercitazione autoguidata (ea2) (tranne ultime due sezioni).
LEZIONE 8: 7/11/2002 uso di = invece di == in una condizione (sbagliato).
Esercizi: ricerca del massimo tra un gruppo di variabili. Tecnica del massimo parziale. Conversioni implicite in assegnazione.
Espressioni logiche e operatori logici. CHECKINP.C, MAX3AND.C, MAX3ANDB.C, MAX3ANDC.C, Tecnica della variabile flag.
LEZIONE 9: 12/11/2002 Costrutti iterativi. Concetti e istruzione for. Schema generale di un ciclo. Tecnica del contatore. (Esercizi: CICLO1.C, CICLO2.C - vedi es.autoguid.3). Ciclo con numero non fissato di dati in input (Esercizi: CICLO3.C, CICLO4.C - vedi es.autoguid.3).
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 13/11/2001 Terminazione della Seconda esercitazione autoguidata (ea2)
e inizio della Terza esercitazione autoguidata (ea3).
LEZIONE 10: 14/11/2002 Costrutti iterativi. Tecnica di accumulazione su una sequenza di numeri (SOMMA.C).
Tecnica del massimo parziale su una sequenza di numeri fissata (MAXPARZ.C).
Cicli innestati (PITAGORA.C).
Costrutto while. Massimo di una sequenza di numeri 999-terminata (MAX999WH.C).
LEZIONE 11: 19/11/2002 Conversione implicita ed esplicita (casting) dei valori di una espressione.
Istruzione break. Cicli infiniti e cicli infiniti "controllati" (MEDBREAK.C). Esercizio Massimo Comun Duivisore (mcd.c in ea3).
Costrutto do-while.
Ambiguita' del costrutto if (AMBIGUIF).
Introduzione all'uso delle funzioni C. Funzioni C. Funzioni definite dal programmatore.
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 20/11/2002 Completamento Terza esercitazione autoguidata (ea3).
LEZIONE 12: 21/11/2002 Funzioni C. Unita' chiamante e unita' chiamata. Attivazione di una funzione. Passaggio di parametri. Record di attivazione. (FUNMAX.C).
Regole di visibilita'. Entita' TOP LEVEL. Tipo void e funzioni void.
LEZIONE 13: 26/11/2002 Il prototipo e la dichiarazione di funzione.
Riepilogo sulle regole di visibilita': identificatori uguali in contesti locali diversi.
Variabili TOP LEVEL ed effetti collaterali su esse.
Schema di scambio.
Problema degli effetti collaterali su entita' non locali (parametri attuali in particolare). Soluzione al problema mediante uso di variabili top level. Introduzione all'idea di soluzione mediante passaggio di indirizzi.
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 27/11/2002 Terminazione terza esercitazione (se necessario).
Quarta esercitazione autoguidata.
LEZIONE 14: 28/11/2002 Variabili puntatore. Indirizzi e locazioni puntate. (ESPER.C).
Schema di scambio con puntatori. Soluzione al problema degli effetti collaterali su parametri: passaggio di indirizzi. Funzione void per lo scambio.
Esercizio su funzioni con parametri indirizzi: riduzione di CONTR1.C)
LEZIONE 15: 03/12/2002 Esercizio su funzioni con parametri indirizzi (CONTR1.C) e commissione sua modifica (CONTR2.C).
Introduzione agli array
Array ed uso di array (ARRMED.C, NEGOZI.C).
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 04/12/2001 Termiinazione quarta esercitazione autoguidata (ea4.
Inizio quinta esercitazione autoguidata.
LEZIONE 16: 5/12/2002 Array ed uso di array (NEGOZI.C).
Funzioni con parametri array (NEGFUN1.C).
Funzione di lettura di un array (funzione con parametro array di output) (NEGFUN2.C, NEGFUN3.C).
LEZIONE 17: 10/12/2002 Ricerca in un array. Rappresentazione di vettori matematici in C. Prodotto righe per colonne tra vettori (funzione che restituisce il prodotto; funzione che fornisce il prodotto come side effect). Somma di vettori (funzione con parametro array di output).
Array bidimensionali. Rappresentazione di matrici in C. Stampa di una matrice.
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: 11/12/2002 Quinta esercitazione autoguidata.
LEZIONE 18: 12/12/2002 Array bidimensionali. Lettura di una matrice. Media degli elementi di una matrice. Somma di matrici. (MATSOMM1.C, MATSOMM2.C). Condensazione (somma sulle righe di una matrice). (CONDENS.C). Prodotto tra due matrici.
Esercizio riepilogativo: centralina per la misurazione degli idrocarburi incombusti (MISUR.C).
ESERCITAZIONE AUTOGUIDATA IN LABORATORIO: XX/12/2002 ? Continuazione quinta esercitazione autoguidata.


marte@dis.uniroma1.it