Corso di Programmazione
I e Laboratorio - B Turno 3 (T3)
ESAME DI LABORATORIO dell'11
luglio 2005 : si terra' alle 12:00, invece che alle 11:00 !!!!!!
Suggerimento: preparare con
molta cura la classe ArrayUtil e tutte le classi relative all'applicazione
Banca/Conto e portarle in laboratorio il giorno della prova di esame.
Diario del laboratorio turno T3
I Giovedi
7/10/2004
Introduzione al laboratorio: TextPad, ambiente Windows
del laboratorio introduzioneLaboratorio.
II e III Lunedi 11/10/2004 e Giovedi 14/10/2004
- CiaoNome
- Somma
- Somma sequenziale
- Classe esercizi
- Booleani
- Calcola Turno
- Operazioni
- Sequenza
IV e V Lunedi
18/10/2004 e Giovedi 21/10/2004
- Esercizi
somma
- Fare un programma per calcolare
il massimo tra questi numeri: 21, 11, -23, 5.
- Fare un programmino che
utilizza JOptionPane per chiedere il nome dell'utente
e per dare un messaggio di buona giornata
con il nome dell'utente.
esercizi dati dal Prof. Giovannetti:
- Definire una classe MaxConIndice
contenente solo un main il quale legga da consolle una
sequenza di interi terminata da un non intero, e ne scriva su
consolle l'indice del massimo (cioe' il suo numero d'ordine
nella sequenza) e il suo valore. Se vi sono piu'¹ elementi
di valore massimo, scriva l'indice del primo di tali valori.
Esempio: se la sequenza e'
21 15 18 38 27 29 38 4 stop, il programma scrive:
"il massimo e'
l'elemento n. 4 della sequenza e vale 38".
- Definire una classe MinMaxConIndici
contenente solo un main il quale legga da consolle una
sequenza di interi terminata da un non intero, contenente almeno
un elemento, e, analogamente all' esercizio precedente,
scriva su consolle l'indice e il valore del minimo, e
l'indice e il valore del massimo.
- Definire una classe DuePiuGrandiConIndici
contenente solo un main il quale legga da consolle una
sequenza di numeri interi costituita da almeno due interi (rappresentanti
ad es. redditi di persone, oppure punteggi in un concorso,
ecc.) terminata da un non intero e, analogamente agli esercizi
precedenti, scriva su consolle i due valori più
grandi (che possono anche essere uguali) con loro indici.
VI
Giovedi 28/10/2004
- Leggere da finestra di input (JOptionPane)
un elenco di numeri interi, memorizzarli in un array e ordinarli
dal minimo al massimo. Quando sono ordinati, stamparli.
- in una prima versione utilizzare
due array, uno per inserire i numeri in input e uno che contiene
i numeri ordinati.
- in una seconda versione utilizzare
solo un array.
VII Giovedi 4/11/2004
Estendere l'esercizio visto a lezione del conto
bancario, aggiungendo i metodi che permettono di:
- depositare
- vedere il saldo
- ritirare dei soldi
- fare un bonifico
Utilizzando JOptionPane per ricevere l'input dei clienti.
VIII e IX Lunedi
8/11/2004 e Giovedi 11/11/2004
Creare una classe Banca che gestisca piu' conti
per vari clienti:
- inizializzare (nel costruttore di
Banca) una variabile statica (di tipo Array) che possa contenere
un certo numero di conti
- nella classe Banca definire metodi
che permettono ai vari clienti di interrogare e modificare il
proprio conto
- utilizzare le finestre tipo JOptionPane
per fare input/output con i clienti
Eseguire Esercitazione
6 del Prof. Giovannetti e discuterne insieme le parti
piu' complesse.
X e XI Lunedi
15/11/2004 e Giovedi 18/11/2004
- Completare l'Esercitazione 6 del Prof.
Giovannetti.
- Sperimentare l'algoritmo di inserimento
di un elemento in un array ordinato, introdotto a lezione.
giovedi 18 :
eseguiremo
una prova di esempio dell'esame di laboratorio. Vi verra'
dato il testo di un esercizio che dovrete svolgere
durante la prima ora. Nella seconda
ora lo correggiamo e discutiamo insieme.
XII, XIII e XIV
Lunedi 22/11/2004, Giovedi 25/11/2004 e Venerdi 26/11/2004 14-16
(RECUPERO)
Esercizio I (lunedi):
- Scrivere un metodo con due argomenti:
un array a di stringhe ed un array b di interi. Gli argomenti a
e b sono della stessa lunghezza ed entrambi completamente riempiti.
Il metodo cancella da a un elemento a[i] se b[i] e' pari, non lo cancella
se e' dispari, compatta a e restituisce il numero di elementi rimanenti
in a dopo le eventuali cancellazioni.
- Scrivere un main dove si deve
creare un array di stringhe, lo si deve inizializzare con o senza
uso della classe Console, poi si deve chiamare il metodo sull'array
e stampare in output il risultato restituito da questo.
Esercizio II (giovedi):
- Il metodo ha i parametri: un array di
stringhe, completamente riempito, non ordinato e una stringa. Deve
trovare la posizione nell'array della stringa che inizia con la stringa
passata come parametro oppure restituire -1.
- Nel main si deve creare un array di stringhe,
lo si deve inizializzare utilizzando il metodo di ArrayUtil per costruire
un array di stringhe, poi si deve invocare il metodo sull'array e
stampare in output i risultati trovati.
Esercizio III (venerdi):
- Completare l'esempio del Conto e Banca
- definire oggetti (classi) per:
- Persona (nome, cognome, data di nascita,
luogo di nascita, codice fiscale, stipendio )
- Famiglia (lista di persone con stesso
indirizzo)
- Operazione (data, tipo operazione (bonifico,
accredito, pagamento bancomat))
- Conto (saldo, Persona o lista di persone
o famiglia o ditta come intestatari, lista operazioni)
- Ditta (partita iva, nome)
- Banca: classe nella quale si inizializzano
vari conti, intestati a piu' persone, si offre la possibilita'
all'utente (impiegato della banca) di fare bonifici da un conto
ad un altro, di esaminare le operazioni
eseguite su un certo conto.
- definire i metodi sugli oggetti che permettono
di :
- fare accredito stipendio su conto dei
dipendenti da parte della ditta
- esaminare lista operazioni di un certo
conto
- Completare ArrayUtil
XV, XVI, e XXVII Lunedi
29/11/2004, Giovedi 2/121/2004 e Venerdi 3/12/2004
14-16 (RECUPERO)
lunedi 29/11: COMPLETARE Esercizio III (venerdi)
giovedi 2/12: continuazione esercizio Banca/Conto e Supermarket.
venerdi 3/12 : soluzione collettiva dell'applicazione Conto/Banca,
con discussione di varie soluzioni alla lavagna.
XXVIII Lunedi 6/12 (Ultimo
laboratorio)
completamento compiti ed esercizi
di tutto il corso
Informazioni utili
- Consigli su come scrivere un programma Java:
Java
Coding conventions
- Dove si trovano le descrizioni delle librerie
Java della versione 1.5.0 (API)
- Come scrivere un programma con commenti
tipo quelli degli API con Javadoc
- Per evitare i problemi
di TextPad per quanto riguarda la perdita degli
strumenti compila ed esegui con la 1.5,
si puo' compilare ed eseguire da finestra DOS
utilizzando dei file comandi di DOS
chiamati <nome comando>.BAT . Per esempio:
per compilare jc.bat
(jc nomefile) ed per eseguire je.bat
(je nomefile)
(NOTA: non avendo la possibilita'
di cambiare il PATH, salvarli nella directory di lavoro).
|