Terza informatica

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