Info

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.