Programmazione didattica per la classe terza indirizzo tecnologico:
STRATEGIE PER LA RISOLUZIONE DEI PROBLEMI
- Approccio sistematico ai problemi
- Comprensione e modellazione del problema.
- Ricerca di una soluzione
- Dal modello all'algoritmo risolutivo
- Formalismo: diagramma a blocchi
ELEMENTI DI PROGRAMMAZIONE
- Il concetto di dato. Dati e informazioni
- I tipi di dati e occupazione in memoria
- Casting implicito ed esplicito
- Le istruzioni di assegnazione e di ingresso/uscita.
- Le strutture di controllo: la sequenza, la selezione e l'iterazione.
- La struttura di scelta multipla (switch)
IL LINGUAGGIO C++
- Gli elementi lessicali del linguaggio C++ e struttura di un programma
- I file di inclusione
- Le variabili e le costanti; tipi di dati standard
- L'assegnazione
- Le espressioni: operandi e operatori
- La gestione dell'input/output
- I contatori e gli accumulatori. La creazione, la compilazione, e l'esecuzione di un programma in C++
- L'importanza della documentazione del proprio lavoro
- Implementazione delle strutture di controllo in C++: sequenza (While Do, Do While), selezione (If), iterazione (For)
- Implementazione della struttura di scelta multipla (switch)
L'ORGANIZZAZIONE DEI PROGRAMMI
- La progettazione top-down: il concetto di sottoprogramma
- Le funzioni
- Il passaggio di parametri per valore
- Il passaggio di parametri per riferimento
- L'implementazione delle funzioni con e senza parametri
- Regole di visibilità delle variabili: variabili globali e locali
- Librerie di funzioni di utilizzo comune e loro inclusione
- Le variabili stringa e le principali funzioni che operano su di esse
STRUTTURE DATI: I VETTORI
- Algoritmi di inserimento e visualizzazione anche tramite utilizzo funzioni
- Algoritmi di ordinamento: per sostituzione, per selezione, bubble-sort (video simulazione con balletto ungherese - fonte Youtube)
- Algoritmi di ricerca in un vettore: completa, sequenziale, con fermata in caso soluzione, binaria o dicotomica
STRUTTURE DATI: LE MATRICI
- Costruzione matrici quadrate e non
- Somma tra matrici, differenza tra matrici, prodotto tra matrici. trasposta, inversa, identita', diagonale principale, diagonale secondaria
- Ispezione per colonna, per riga, elaborazioni varie
LE STRUCT
- Definizione ed utilizzo di Struct in problemi non banali
- Array di Struct
- Inserimento, ricerca, ordinamento in array di Struct
- Risoluzione di problemi vari con l'uso delle strutture dati e codifica in linguaggio C++
LA RICORSIONE
- Cenni sull'uso della ricorsione: funzioni che richiamano se stesse
- Potenzialità e rischi
- Cenni alla complessità della ricorsione
- Esempio calcolo serie Fibonacci tramite funzione ricorsiva o sequenziale e confronto
- Esempio calcolo fattoriale tramite funzione ricorsiva o sequenziale e confronto