Finalità del modulo di Fondamenti di Informatica + Laboratorio di programmazione
Il modulo intende fornire i concetti di base dell'informatica e gli strumenti
fondamentali per l'utilizzo e la programmazione dei calcolatori elettronici,
con particolare attenzione agli algoritmi, ai linguaggi e alle metodologie
di programmazione. Come linguaggio di programmazione viene usato il C++.
Prerequisiti
Il prerequisito ideale sarebbe che lo studente fosse in possesso del patentino
ECDL,
o avesse le conoscenze necessarie per conseguirlo.
Dei sette moduli che costituiscono il
Syllabus
di ECDL, sono considerati prerequisiti indispensabili
i seguenti:
- Modulo 1 - Concetti di base della Tecnologia dell'Informazione
- Modulo 2 - Uso del computer e gestione dei file
- Modulo 3 - Elaborazione testi
- Modulo 7 - Navigazione e comunicazione in rete
Programma del corso
Parte A (20 ore in aula)
- Rappresentazione posizionale dei numeri. Sistemi di numerazione. Conversione
di base. Aritmetica binaria.
- La rappresentazione dei dati in memoria. Rappresentazione in complemento
a 2. Il codice ASCII. Rappresentazione delle stringhe C.
- L'organizzazione dei file su disco. Cenni ai sistemi operativi Dos-Windows
e Unix-Linux.
- Definizione di problema, dati, risultati. Concetto di algoritmo, metodo
computazionale, esecutore.
- Introduzione agli algoritmi di ricerca e di ordinamento.
- Progettazione di un programma: programmazione top-down.
Introduzione alla programmazione strutturata.
Parte B (54 ore: 30 in aula e 24 in laboratorio)
- Il linguaggio C++
- Struttura di un programma.
- Tipi di dati elementari.
- Costanti, variabili, operatori, espressioni.
- Assegnamento. Istruzioni di controllo.
- Array e stringhe.
- Funzioni e prototipi. Ambito degli identificatori. Modalità
di passaggio dei parametri.
- Stack e record di attivazione (cenni).
- Sovrapposizione di funzioni.
- Ricorsione.
- Tipi enumerati. Strutture.
- Il sistema di input/output del C++.
- Gestione di file.
- Uso dell'Editor e il debugging di un programma.
- Puntatori. Allocazione dinamica della memoria.
- Uso delle librerie di base.