Informatica per Ing. Biomedica
Sei CFU di cui due di laboratorio.
Modalità d’esame
La durata della prova d’esame è di due ore. Non è consentito l’uso di libri o appunti. Una copia del libro di testo e dei lucidi è disponibile alla cattedra per consultazione. E’ necessario iscriversi attraverso il sistema di prenotazione esami.
Il numero di scritti che è possibile consegnare è limitato a 4 per anno.
Testi d’esame
I testi d’esame degli anni passati sono disponibili qui.
Testi di riferimento
- Introduzione alla programmazione ed elementi di strutture dati con il linguaggio C++, A. Domenici e G. Frosini, FrancoAngeli editore. Circa 1/3 del libro.
- Note su organizzazione di un calcolatore e rappresentazione dell’informazione. P. Corsini e G. Frosini, SEU (non più stampato e disponibile in biblioteca). Circa 1/2 della dispensa.
Programma del corso
Organizzazione di un calcolatore e rappresentazione dell’informazione
- Organizzazione di un semplice calcolatore.
- Blocchi funzionali.
- Rappresentazione dei testi.
- Rappresentazione delle figure.
- Espressione di un numero in una generica base.
- Conversione di base.
- Rappresentazione dei numeri all’interno dei calcolatori:
- Rappresentazione dei numeri naturali in base due.
- Rappresentazione dei numeri interi in base due.
- Rappresentazione dei numeri reali in base due.
Programmazione strutturata
- I linguaggi di alto livello.
- Scrittura, traduzione, collegamento ed esecuzione di un programma.
- Formalismo di Backus e Naur.
- Metalinguaggio per la sintassi del C++. Sintassi del C++.
- Identificatori, parole chiave, proprieta’ degli operatori.
- Struttura di un semplice programma.
- Oggetti. Dichiarazioni e definizioni.
- Tipo intero. Tipo unsigned. Tipo reale. Tipo booleano. Tipo carattere.
- Tipi enumerazione.
- Conversioni di tipo.
- Operatore sizeof. Assegnamento. Incremento e decremento.
- Espressioni aritmetiche e logiche. Operatore condizionale.
- Istruzioni condizionali: if.
- Istruzioni condizionali: switch.
- Istruzioni ripetitive: il while.
- Istruzioni ripetitive: il for.
- Standard input, standard output, standard error.
- Accesso ai file (lettura e scrittura).
- Concetto di funzione.
- Istruzione return.
- Dichiarazioni di funzione.
- Argomenti e variabili locali.
- Funzioni void. Funzioni senza argomenti.
- Overloading di funzioni.
- Dicharazioni typedef.
- Librerie: stdlib.h, ctype.h, math.h.
- Tipi derivati. Puntatori.
- Operazioni sui puntatori.
- Tipi e oggetti array.
- Array e puntatori.
- Array multidimensionali.
- Stringhe.
- Funzioni di libreria sulle stringhe.
- Array come argomenti di funzioni.
- Argomenti array costanti. Argomenti array multidimensionali.
- Strutture. Operazioni sulle strutture.
- Visibilita’. Blocchi.
- Unita’ di compilazione. Collegamento.
- Classi di memorizzazioni. Effetti collaterali.
Algoritmi di ordinamento e tipi di dato astratto
- Ordinamento di vettori: selection-sort e bubble-sort.
- Ricerca lineare. Ricerca binaria.
- I tipi di dati astratti pila e coda.