Esempi di programmi C++ mostrati a lezione
Fondamenti di Programmazione B
Tipi di Dati Astratti in C++ (con overloading, parametri
const&
, gestione eccezioni)
Classe
data
(
versione semplificata
)
Classe
razionale
(
versione semplificata
)
Esempio semplice overloading funzione esterna
Uso
stream
come parametri di funzione
Classe
razionale
(
versione semplificata con overloading operatori
e
con funzioni proprie definite separatamente
)
Definizione standard classe
string
.
Esempio semplice uso classe
string
Classe
intPila
: pila (non limitata) di interi (
classe
,
main di prova
)
Classe
int_lista
Classe
razionale
(
versione semplificata con gestione eccezioni
)
Esempio semplice gestione eccezioni
(con ripetizione input) per classe
razionale
Programmazione "Object-Oriented" in C++ (con ereditarieta')
Classe
rettangolo
(
classe con main di prova
)
Classe
persona
(
classe
,
main di prova
)
Classe
studente
derivata da
persona
(
classe
)
Classe
data_con_orario
derivata da
data
(
classe
,
main di prova
)
Classi e funzioni "template" in C++
Classe generica (template)
Pila<
T>
(
classe
).
Funzioni generiche (template)
scambia
e
max
Classe generica (template)
Vett<
T>
(vettore, con allocazione memoria dinamica, ridefinizione operatore
[]
e costruttore di copia)
Definizione standard classe
vector
.
Esempio semplice uso classe
vector
Programmi semplici in Java
Media di tre interi
Media di n numeri interi (con n dato di input)
Trova max. su un array di interi
Determina la maggiore tra due date lette da std input
(classe
Data
)
Prova operazioni su stringhe
Calcolo del fattoriale (con metodi
fatt
e
leggiNat
):
una classe
, piu' classi (
calcola fattoriale
,
leggi numero
,
main
)
Programmazione "Object-Oriented" in Java (con ereditarieta')
Classe
Razionale
(semplificata), con
main di prova
Classe
Rettangolo
, con
main di prova
Classe
Quadrato
(derivata da
Rettangolo
), con
main di prova
Prova
operatore
instanceof
Classe
Razionale
(con eccezioni);
main di prova
e
classe eccezione
Interfaccia
Pila
e sue implementazioni:
classe
PilaArray
classe
PilaVector
;
main di prova
Realizzazione semplici GUI in Java
Creazione finestre con semplici oggetti grafici e diversi layout; definizione "listener" e gestione eventi; esempio GUI per calcoli aritmetici (
archivio zip
)
Esempio progettazione/implementazione modulare
Gestione biblioteca:
specifiche
, bozza soluzione C++ (
file unico
,
piu' file con
#include
)
Implementazione di strutture dati dinamiche
Liste semplice concatenate in C++
(con funzioni ricorsive)
Alberi binari di ricerca in C++
(rappresentazione, ricerca, inserimento nodi, visite)
Alberi binari di ricerca in Java (rappresentazione, inserimento nodi, visita:
classe
Nodo
,
classe
BAlbero
,
main di prova
)
Grafi in C++
(rappresentazione, ricerca, inserimento nodi/archi, raggiugibilità) (
classe
intlista
utilizzata nell'implementazione del grafo)