* termini da conoscere * hardware, software, input, output, estensione dei file, file di dati, file eseguibili, programmi, sistema operativo * programmatore, codice sorgente, bug, aggiornamenti. * le principali differenze tra il sistema di numerazione base 2 e il base 10 (non le operazioni) * gli elementi che costituiscono l'hardware del computer: * le funzioni svolte da cpu, memoria centrale e dispositivi di input/output. * la memoria di massa: tipi di supporto fisico e unita' di misura della memoria * il modello di Von Neumann * variabile, costante, tipo di dato, problema, algoritmo risolutore, diagramma di flusso, i blocchi che costituiscono un diagramma di flusso. * Teorema di Bohm Jacopini * concetto di programmazione strutturata * struttura sequenziale * struttura condizionale e operatori logici * struttura iterativa(precondizionale). * concetto di variabile contatore, totalizzatore e condizione di uscita * concetto di strutture annidate * le funzioni svolte da un IDE (integrated development environment) * funzione di debug e autocompletamento * linguaggi di programmazione compilati e interpretati. * differenza tra programmi ad interfaccia grafica e ad interfaccia testuale * commenti e indentazione nel codice del programma * tipi di dato primitivi in c++ * dichiarazione e inizializzazione delle variabili * istruzione di assegnazione * operatori di input e output (insertion ed extractor) * traduzione delle tre strutture in c++ * traduzione di strutture tra loro annidate. * risoluzione dell'ambiguita dell'else nella struttura condizionale annidata * concetto di funzione * concetto di parametri effettivi e formali * concetto di variabile locale * concetto di restituzione del risultato (return) * concetto di dichiarazione di funzione * concetto di file di intestazione (header file) * direttiva include * cenni al passaggio per valore * cenni passaggio per riferimento (reference) * cenni a funzioni ispettrici (inspector) e modificatrici (mutator)