Problemi e Specifiche:nozione generale di
problema,specifiche formali dei problemi.
Linguaggi di programmazione:nozione di agente di
calcolo,struttura di una macchina astratta e relativo
linguaggio-macchina.
Un linguaggio imperativo minimale:tipo di dato intero,
variabili, espressioni, assegnamento, condizionale, iterazione.
Correttezza e Terminazione:correttezza rispetto alle
specifiche,questione della terminazione,definizioni di correttezza
parziale e totale,tecniche elementari per le verifiche di
correttezza.
Introduzione ai tipi di dati:nozione di tipo e sue caratteristiche fondamentali: nome, insieme degli elementi e operazioni consentite;tipi semplici: integer, real, boolean, char.Tipi di dati astratti (ADT):introduzione.array e record, files; stringhe.Strutture dati ricorsive
Funzioni (e procedure); passaggio dei parametri.