L.S. “M.Grigoletti” - PORDENONE
PROGRAMMAZIONE di INFORMATICA per COMPETENZE
Classe TERZA LICEO SCIENTIFICO - OPZIONE SCIENZE APPLICATE
ore settimanali 2, ore annuali 66
Nella classe TERZA questa materia concorre allo sviluppo delle seguenti competenze / abilità:
C1 Individuare le strategie appropriate per la soluzione di problemi
C1.1 Risolvere problemi scomponendoli in problemi più piccoli
C1.2 Generalizzare i problemi
C1.3 Applicare l’induzione nella soluzione di problemi
C1.4 Valutare l’efficienza di algoritmi risolutivi
C2 Gestire ed organizzare dati e/o informazioni
C2.1 Definire ed utilizzare idonee strutture dati
C2.2 Effettuare ordinamenti e ricerche sui dati con opportuni algoritmi
C2.3 Individuare e/o stabilire collegamenti e relazioni tra dati
C2.4 Gestire in maniera ottimizzata la memoria per il salvataggio, il reperimento e l’elaborazione dei dati
C2.5 Elaborare in modo automatizzato testi in formato elettronico
C2.6 Gestire gli archivi elettronici
C3 Utilizzare e produrre testi multimediali
C3.1 Essere consapevole delle potenzialità delle tecnologie rispetto al contesto culturale e sociale in cui vengono
applicate
C3.2 Navigare in Internet
C3.3 Progettare Ipertesti
C3.4 Utilizzare i linguaggi del Web HTML e CSS
C3.5 Scegliere i formati opportuni per i contenuti multimediali
C3.6 Produrre testi di vario tipo in relazione ai differenti scopi comunicativi
UDA
Nr.
ORE
COMPE
TENZE
9
C1
8
C1
12
C1, C2
10
C2
UDA Nr.1
Scomposiz. in
sottoprogrammi
UDA Nr.2
Ricorsione
UDA Nr.3
Algoritmi di
Ordinamento /
Ricerca e
Complessità
Computaziona
le
UDA Nr.4
ABILITA’
CONOSCENZE
[C1.1] Risolvere problemi
scomponendoli in problemi più piccoli.
[C1.2] Generalizzare i problemi
□ Traccia di programmi con funzioni
□ Scomposizione del problema in
sottoproblemi
□ Prototipo e sviluppo di una funzione
□ Definizione di funzione ricorsiva
□ Costruzione di semplici funzioni
ricorsive
□ Traccia di funzioni ricorsive; Il ruolo
dello Stack di memoria
□ Confronto tra iterazione e ricorsione
[C1.1] Risolvere problemi
scomponendoli in problemi più piccoli
[C1.2] Generalizzare i problemi
[C1.3] Applicare l’induzione nella
soluzione di problemi
[C1.4] Valutare l’efficienza di algoritmi
risolutivi
[C1.1] Risolvere problemi
scomponendoli in problemi più piccoli
[C1.2] Generalizzare i problemi
[C1.3] Applicare l’induzione nella
soluzione di problemi
[C1.4] Valutare l’efficienza di algoritmi
risolutivi
[C2.1] Definire ed utilizzare idonee
strutture dati
[C2.2] Effettuare ordinamenti e
ricerche sui dati con opportuni
algoritmi
[C2.3] Individuare e/o stabilire
collegamenti e relazioni tra dati
[C2.3] Individuare e/o stabilire
collegamenti e relazioni tra dati
[C2.4] Gestire in maniera ottimizzata
□ Algoritmi di ordinamento iterativi:
Selection Sort e Bubble Sort
□ Algoritmi di ricerca iterativi: ricerca
lineare e ricerca binaria
□ Algoritmi di ordinamento ricorsivi:
Quick Sort
□ Algoritmi di ricerca ricorsivi: ricerca
binaria
□ Confronto tra implementazione
ricorsiva e iterativa
□ Concetto di Complessità
Computazionale di un algoritmo
□ Calcolo della complessità per gli
algoritmi di Ordinamento e Ricerca;
Classi di Complessità
□ Il concetto di puntatore
□ Uso dei puntatori: operatori & e *
□ Tipi di puntatore e conversioni di tipo
L.S. “M.Grigoletti” - PORDENONE
Puntatori
UDA Nr.5
la memoria per il salvataggio, il
reperimento e l’elaborazione dei dati
21
C1, C2
Stringhe,
Record, Tabelle
e File
UDA Nr.7
6
Linguaggi del
Web: HTML
(opzionale)
TOTALE ORE
66
C3
[C1.1] Risolvere problemi
scomponendoli in problemi più piccoli
[C1.2] Generalizzare i problemi
[C1.3] Applicare l’induzione nella
soluzione di problemi
[C1.4] Valutare l’efficienza di algoritmi
risolutivi
[C2.1] Definire ed utilizzare idonee
strutture dati
[C2.2] Effettuare ordinamenti e
ricerche sui dati con opportuni
algoritmi
[C2.3] Individuare e/o stabilire
collegamenti e relazioni tra dati
[C2.4] Gestire in maniera ottimizzata
la memoria per il salvataggio, il
reperimento e l’elaborazione dei dati
[C2.5] Elaborare in modo
automatizzato testi in formato
elettronico
[C2.6] Gestire gli archivi elettronici
[C3.1] Essere consapevole delle
potenzialità delle tecnologie rispetto al
contesto culturale e sociale in cui
vengono applicate
[C3.2] Navigare in Internet
[C3.3] Progettare Ipertesti
[C3.4] Utilizzare il linguaggio del Web
HTML
(casting)
□ Puntatori a puntatori e vettori di
puntatori
□ Aritmetica dei puntatori
□ Legami tra vettori e puntatori in
C/C++
□ Cenni alla gestione dinamica della
memoria
□ Cenni alle strutture dati dinamiche:
liste concatenate e alberi
□ Le stringhe in C: il tipo di dato char*
□ Funzioni della libreria <String.h>:
strlen( ), strcpy( ), strcat( ), strcmp( ).
□ Record: dichiarazioni di record
(struct) semplici o annidate
□ Accesso ai campi di una variabile
record: operatore “.”
□ Le tabelle, ovvero i vettori di Record
□ Esempi di programmi su record e
tabelle: gestione di archivio persone
□ I file in C: il tipo FILE*
□ Creazione / apertura / chiusura di un
file in C: funzioni fopen( ) ed fclose( )
□ Lettura / scrittura in file di testo in C:
funzioni; fscanf( ), fprintf( ) e feof( )
□ Gli archivi Elettronici: cenni
all’inserimento / modifica /
cancellazione di record.
□ Concetti fondamentali di Internet:
Client / Server web, indirizzi IP,
DNS, protocollo
□ Caratteristiche del linguaggio HTML
□ Creazione di semplici pagine web in
HTML: testo e formattazione base,