Dipartimento di Informatica - Sede di Crema

CORSO DI LAUREA TRIENNALE SSRI ONLINE

Sicurezza dei Sistemi e delle Reti Informatiche Erogazione Online

Programmazione

Docente
Marco Anisetti

Crediti
12 cfu

Anno: I

Quadr: I

Programma

Nozioni di Base

  1. Nozione di algoritmo.
  2. Fasi della programmazione.
  3. Strumenti di modellazione.
  4. Documentazione.
  5. Breve storia della programmazione.

Programmazione Elementare

  1. Rappresentazione di informazione numerica e simbolica.
  2. La macchina MIX e il suo linguaggio assembly MIXAL.
  3. Organizzazione dei dati: il concetto di variabile, mappa della memoria e tabelle, strutture dati dinamiche.
  4. Alcune tecniche fondamentali di programmazione: sottoprogrammi, ricorsione, interpreti, automi.

Programmazione Strutturata

  1. Principi della programmazione strutturata.
  2. Linguaggio C: espressioni e assegnamenti, costrutti di controllo, tipi predefiniti, vettori, matrici e stringhe, tipi strutturati, puntatori e gestione della memoria, funzioni e passaggio di parametri, main e parametri al main, libreria standard, gestione dei file.
  3. Eliminazione dei Salti: teorema di Böhm-Jacopini, trasformazione di Ashcroft e Manna.
  4. Correttezza del codice: elementi di validazione e verifica della correttezza, logica di Hoare.

Modalità d’esame

L’esame consiste di

  • una prova scritta cartacea composta di più esercizi e domande di teoria;
  • lo sviluppo di un progetto obbligatorio in linguaggio C e la sua discussione in un orale;
  • lo sviluppo di un progetto facoltativo in linguaggio Java e la sua discussione in un orale.