· Presentazione del corso e delle modalità d’esame
· Il sistema binario: bit, byte e loro multipli
· Hardware e Software
· Linguaggio macchina
· Linguaggi di alto livello
· Compilatore ed Interprete
· Java--: installazione e primi programmi
· Outputin Java--
· Introduzione alle variabili
· Bytecode: compilazione ed interpretazione inJava
· Codifica binaria di numeri interi; complemento a2
· I tipi interi del Java
· Conversone numeri in virgola mobile in binario
· Conversione tra base 2, 8 e 16
· Rappresentazione mantissa ed esponente
· Tipi in virgola mobile del java
· Paradigmi di programmazione
· Variabili, tipi, identificatori
· Dichiarazione, Inizializzazione ed assegnazionedi variabili
· Problema / algoritmo / programma
· Sintassi e semantica dei linguaggi diprogrammazione
· Calcolabilità delle funzioni: non tutto ècalcolabile
· Outputin Java--
· Esercizi su variabili ed assegnamento
· Operatori aritmetici per numeri interi e numeriin virgola mobile
· Conversione implicita e conversione esplicita(cast)
· Inputin Java—
· I diagrammi di flusso
· Espressioni ed effetti collaterali
· Operatori con effetti collaterali
· Introduzione agli array
· Tipi primitivi vs tipi riferimento
· Stack e Heap
· Array monodimensionali
· Espressioni booleane
· Operatori di confronto
· Operatori booleani
· Esercizi su array
· Esercizi su espressioni booleane
· I blocchi
· Ambito di visibilità delle variabili e blocchi
· Commenti in java
· Legge di De morgan
· Comando if e If…else
· Comando vuoto
· Comando while
· Programmazione strutturata versus programmazionecon salti
· Esercizi su cicli e selezione
· Comando do…while
· Comando for
· Equivalenza tra comandi while, do…while e for
· Comando for each
· Comando switch e comando break
· Esercizisu array
· Esercizi su cicli
· Array multidimensionali
· Comandi etichettati
· Break e Continue
· Esercizi su cicli e array
· Esercizi su break e continue
· Esercizi su array bidimensionali
· Esercizi su cicli e array
· Ordinamento per selezione
· Metodi
· Parametri formali e Parametri attuali
· Stack e Heap nella chiamata dei metodi
· Simulazione programmi con Stack e Heap
· Esercizi su metodi
· Ricerca binaria e ricerca lineare
· Esercizi su cicli e array
· Esercizi su Metodi
· Esercizi
· Dal java-- al java: l’ambiente Eclipse
· Input da tastiera in Eclipse
· Esercizi
· Esercizi in classe in preparazione alla provaparziale
· Prova parziale
· Assegnazione del progetto
· Correzione esercizi prova parziale
· Overloading di metodi
· Ricorsione
· Albero delle chiamate ricorsive
· Evoluzione dello Stack nelle chiamate ricorsive
· Iterazione e ricorsione
· Esercizi
· Tecnica Divide et Impera
· Ricorsione su array
· Esercizi
· Metodo Merge per l’unione di due array ordinatiin un unico array ordinato
· Esercizi su ricorsione
· Codice per la conversione di numeri tra basidiverse
· Merge-Sort
· Programmazione dinamica (esercizio sottoarray disomma massima)
· Tipi riferimento definiti dall’utente: costruttoclass
· Differenza tra tipi primitivi e tipi riferimento
· Array di tipi riferimento
· Tipi ricorsivi
· Ricorsione strutturale
· Esercizi su tecnica divide et impera
· Implementazione del selection-sort
· Implementazione del merge-sort
· Confronto tra merge-sort e selection-sort
· Esercizi su tipi riferimento: le frazioni
· Strutture dati dinamiche
· Introduzione a Liste, Pile, Code
· Pile in java
· Code in java
· Liste semplicemente concatenate
· Liste doppiamente concatenate
· Esercizi su tipi riferimento: le frazioni
· Esercizi su tipi riferimento strutturalmentericorsivi: espressioni con frazioni
· Esercizi su strutture dati dinamiche
· Esercizi su tipi riferimento strutturalmente ricorsivi:espressioni con frazioni
· Liste
· Esercizi su tipi riferimento e strutture datidinamiche
· Code implementate tramite array
· Esercizi su tipi riferimento e strutture datidinamiche
· Esercizi in preparazione all’esame
SEDE DI CHIETI
Via dei Vestini,31
Centralino 0871.3551
SEDE DI PESCARA
Viale Pindaro,42
Centralino 085.45371
email: info@unich.it
PEC: ateneo@pec.unich.it
Partita IVA 01335970693