Benvenuto!
Accedi
o
registrati
.
06-12-2019, 09:14:43
Home
CDL Informatica
UniCT
CEA
Prof
Help
Search
Calendar
Login
Register
Forum Informatica Unict
»
LAUREA TRIENNALE (D.M. 270/04)
»
I anno
»
Programmazione 2, 9 CFU
(Moderators:
Rosalba Giugno
,
Alfredo Pulvirenti
,
Simone Faro
) »
Prova in itinere Aprile 2006
Pages: [
1
]
Go Down
« precedente
successivo »
Print
Author
Topic: Prova in itinere Aprile 2006 (Read 1625 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Mito
Matricola
Offline
Posts: 56
Prova in itinere Aprile 2006
«
on:
18-04-2009, 19:39:30 »
Qualcuno ha svolto questa Prova?
Quote
L’implementazione deve contenere le classi con tutti gli attributi e metodi necessari al corretto funzionamento con l’opportuna gestione delle eccezioni. I metodi devono essere opportunamente commentati. E’ necessario implementare una classe di test contenente il metodo
main
.
Sia dato un file di oggetti
transazioni.dat
contenente oggetti transazione. Un oggetto transazione contiene i campi Data, Nome, Cognome, Importo, Zona, ed un campo ListaProdotti contenente una lista di prodotti.
1. Leggere gli oggetti dal file
transazioni.dat
. Inserire gli oggetti in una lista semplicemente linkata ordinati in modo crescente secondo il Cognome. Invertire gli elementi all’interno della lista in modo che essi compaiano inseriti in modo decrescente rispetto al cognome.
2. Inserire gli stessi oggetti all’interno di una coda circolare in base all’ordine di lettura. Estrarre dalla coda i dati e caricare all’interno di una lista relativa alle zone i totali incassati.
3. Per ogni cliente inserito nella lista calcolare l’importo totale delle transazioni. Inserire la coppia (cliente, totImporto) all’interno di uno stack.
4. Inserire all’interno lista semplicemente linkata gli incassi totali per data (ordinati in modo crescente). Digitare da tastiera due date, estrarre dalla coda tutte le date nell’intervallo tra le due. Inserire all’interno di una nuova lista la differenza di incassi tra due date consecutive. Attraversare la lista e stampare a video i risultati.
Logged
TheSpecialOne
Apprendista Forumista
Offline
Posts: 232
Re:Prova in itinere Aprile 2006
«
Reply #1 on:
19-04-2009, 10:16:26 »
ecco, io qui ho problemi a definire l'ordinamento in base ad un campo specifico!
che devo aprire il file, inserire i record in una lista, ci sono, ma poi non sò come posso inserirli ordinatamente in base al cognome come nell' esempio..
se qualcuno può darmi una mano, ne sarei grato!
Logged
Mito
Matricola
Offline
Posts: 56
Re:Prova in itinere Aprile 2006
«
Reply #2 on:
19-04-2009, 10:58:23 »
Quote from: TheSpecialOne on 19-04-2009, 10:16:26
ecco, io qui ho problemi a definire l'ordinamento in base ad un campo specifico!
che devo aprire il file, inserire i record in una lista, ci sono, ma poi non sò come posso inserirli ordinatamente in base al cognome come nell' esempio..
se qualcuno può darmi una mano, ne sarei grato!
Implementando il compareTo nella classe Transazione dovrebbe funzionare.
Code:
public int compareTo(Transazione t)
{
if(this.getCognome().compareTo(t.getCognome())>0)
return 1;
else if(this.getCognome().compareTo(t.getCognome())<0)
return -1;
else
return 0;
}
Parte del MAIN
Code:
boolean continua = true;
LinkedList ListaT = new LinkedList();
try
{
ObjectInputStream inFile = new ObjectInputStream(new FileInputStream("transazioni.dat"));
while(continua) //Ciclo infinito per leggere i file
{
try
{
ListaT.InsertOrd((Transazione)inFile.readObject());
}
catch(EOFException e){...}
//[...altro...]
«
Last Edit: 19-04-2009, 11:03:26 by Mito
»
Logged
TheSpecialOne
Apprendista Forumista
Offline
Posts: 232
Re:Prova in itinere Aprile 2006
«
Reply #3 on:
19-04-2009, 11:14:13 »
dato che il file è dato, si presuppone abbia comparable,no?
a quel punto dovrei solo usare compareTo e il campo da confrontare,no?
grazie cmq
Logged
feboss
Guest
Re:Prova in itinere Aprile 2006
«
Reply #4 on:
19-04-2009, 19:53:47 »
e se gli oggetti transazioni sono ordinati per nome?
cioè questo esercizio presuppone che la classe abbia già un compareTo che ordina per cognome
Logged
Mito
Matricola
Offline
Posts: 56
Re:Prova in itinere Aprile 2006
«
Reply #5 on:
19-04-2009, 20:13:18 »
Quote from: feboss on 19-04-2009, 19:53:47
e se gli oggetti transazioni sono ordinati per nome?
cioè questo esercizio presuppone che la classe abbia già un compareTo che ordina per cognome
Basta cambiare...
Code:
public int compareTo(Transazione t)
{
if(this.getNome().compareTo(t.getNome())>0)
return 1;
else if(this.getNome().compareTo(t.getNome())<0)
return -1;
else
return 0;
}
Logged
feboss
Guest
Re:Prova in itinere Aprile 2006
«
Reply #6 on:
19-04-2009, 20:26:20 »
Ma noi non abbiamo una classe transazioni.Andiamo semplicemente a leggere dal file e la inseriamo in una lista grazie ad un compareTo che ha già(quindi dobbiamo rimetterci alla buona fede di chi ha scritto la classe)
oppure dobbiamo assumere di avere la classe transazioni e quindi di poterla modificare.Quindi in questo caso dobbiamo anche supporre di aver scritto noi il file di oggetti
qualcosa mi sfugge
Logged
Mito
Matricola
Offline
Posts: 56
Re:Prova in itinere Aprile 2006
«
Reply #7 on:
19-04-2009, 20:38:14 »
Quote from: feboss on 19-04-2009, 20:26:20
Ma noi non abbiamo una classe transazioni.Andiamo semplicemente a leggere dal file e la inseriamo in una lista grazie ad un compareTo che ha già(quindi dobbiamo rimetterci alla buona fede di chi ha scritto la classe)
oppure dobbiamo assumere di avere la classe transazioni e quindi di poterla modificare.Quindi in questo caso dobbiamo anche supporre di aver scritto noi il file di oggetti
qualcosa mi sfugge
A quanto ho capito dobbiamo fare tutto. Poi non so...
Code:
import java.io.*;
public class Transazione implements Comparable <Transazione>, Serializable
private Date Data;
private String Nome;
private String Cognome;
private int Zona;
private int Importo;
[...]
[...altri metodi...]
«
Last Edit: 19-04-2009, 20:49:30 by Mito
»
Logged
Aigor
Forumista Esperto
Offline
Gender:
Posts: 1.184
"Il destino non è una catena, ma un volo."[A.B.]
Re:Prova in itinere Aprile 2006
«
Reply #8 on:
19-04-2009, 22:03:08 »
devi fare TUTTO anche la classe Transizioni. L'unica cosa che NON DEVI fare è scrivere il file che avrai come input.
Logged
"Era d'altronde uno di quegli uomini che amano assistere alla propria vita, ritenendo impropria qualsiasi ambizione a viverla.
Si sarà notato che essi osservano il loro destino nel modo in cui, i più, sono soliti osservare una giornata di pioggia." - Seta,Baricco
feboss
Guest
Re:Prova in itinere Aprile 2006
«
Reply #9 on:
20-04-2009, 08:54:38 »
adesso è tutto chiaro
grazie
Logged
Mito
Matricola
Offline
Posts: 56
Re:Prova in itinere Aprile 2006
«
Reply #10 on:
20-04-2009, 10:21:00 »
Qualche soluzione?
Logged
Pages: [
1
]
Go Up
Print
« precedente
successivo »
Jump to:
Please select a destination:
-----------------------------
Area Ufficiale
-----------------------------
=> Annunci Ufficiali
=> Segreteria Didattica
=> Aiuto, proposte e commenti
=> Stages e progetti finali
=> C.O.F. Centro Orientamento e Formazione
=> Messaggi (d)agli amministratori del forum
-----------------------------
LAUREA TRIENNALE (D.M. 270/04)
-----------------------------
=> I anno
===> Architettura degli Elaboratori, 9 CFU
===> Elementi di Analisi Matematica, 12 CFU
===> Fondamenti di Informatica, 9 CFU
===> Matematica Discreta, 12 CFU
===> Programmazione 1, 9 CFU
===> Programmazione 2, 9 CFU
=> II anno
===> Algoritmi, 9 CFU
===> Basi di Dati, 9 CFU
===> Fisica, 9 CFU
===> Ingegneria del Software, 9 CFU
===> Inglese, 3 e 6 CFU
===> Interazione e Multimedia, 9 CFU
===> Sistemi Operativi, 9 CFU
=> III anno
===> Calcolo Numerico, 6 CFU
===> Formazione Numerica, 6 CFU
===> Introduzione all'Analisi dei Dati, 9 CFU
===> Metodi Matematici e Statistici, 6 CFU
===> Reti di Calcolatori, 9 CFU
===> Tecniche di Programmazione Concorrente e Distribuita, 9 CFU
===> Teoria dell'Informazione e Crittografia, 9 CFU
=> III anno - Materie a scelta (crediti liberi)
===> Computer Forensics, 6 CFU
===> Computer Graphics, 9 CFU
===> Digital Game Development, 6 CFU
===> GPGPU/CUDA, 6 CFU
===> Informatica Musicale, 6 CFU
===> LAP 1: programmazione C/C++ 6 CFU
===> LAP 2: Programmazione Android, 6 CFU
===> Sistemi Centrali, 6 CFU
===> Startup d'impresa e Modelli di Business, 6 CFU
===> Internet Security 9 CFU
===> Social Media Management, 6 CFU
=> Corsi disattivati - Vecchio curriculum
===> E-Commerce, 6 CFU
===> Legislazione Informatica, 6 CFU
===> Teoria della Computabilità, 9 CFU
-----------------------------
LAUREA MAGISTRALE
-----------------------------
=> I ANNO
===> Intelligenza Artificiale e Lab, 9 CFU
===> Algoritmi e Complessità, 9 CFU
===> Computer Vision, 9 CFU
===> Crittografia, 9 CFU
===> Fondamenti e Linguaggi per la Programmazione Distribuita
===> Inglese Scientifico, 3 CFU
===> Metodi analitici per l'informatica, 6 CFU
===> Metodi Matematici per l'Ottimizzazione (Corso Integrato), 12 CFU
===> Multimedia, 9 CFU
===> Sicurezza dei Sistemi Informatici 9 CFU
===> Computer Security, 9 CFU
=> II ANNO
===> Machine Learning 6 CFU
===> Teoria della Computabilità, 9 CFU
===> Analisi e Gestione dei Dati, 9 CFU
===> Compilatori, 9 CFU
===> Computazione Naturale e BioIspirata, 6 CFU
===> Introduzione alla Bioinformatica, 9 CFU
===> Linguaggi Formali e Applicazioni, 9 CFU
===> Logica Computazionale, 9 CFU
===> P2P & Wireless Networks, 9 CFU
===> Pattern Recognition, 9 CFU
===> Sistemi Distribuiti, 9 CFU
===> Sistemi dedicati e laboratorio, 9 CFU
===> Web Reasoning
=> Corsi disattivati - Vecchio curriculum
===> Fisica moderna per l'informatica, 6 CFU
===> Linguaggi di Programmazione, 9 CFU
===> Protocolli di Rete
===> Teoria dei Codici, 6 CFU
-----------------------------
Vecchi ordinamenti ad esaurimento
-----------------------------
=> Laurea Triennale (D.M. 509/00)
===> Algoritmi 1
===> Algoritmi 2
===> Basi Teoriche dell'Informatica
===> Economia Aziendale
===> Fisica 1, 6 CFU
===> Fisica 2, 6 CFU
===> Fisica 3
===> Formazione Analitica 1
===> Formazione Analitica 2
===> Formazione Discreta 1
===> Formazione Discreta 2
===> J2ME
===> Lab. Amministrazione di Sistemi
===> Laboratorio di Interazione
===> Modelli Matematici
===> Multimedia per Dispositivi Mobile
===> Progetto Software
===> Reti 1, 6 CFU
===> Sicurezza dei Sistemi Informatici 1
===> Sistemi Distribuiti 1
===> Teoria dei Grafi
===> Usabilità ed Estetica del Web
===> Web Programming
=> Laurea Specialistica (D.M. 509/00)
===> Algoritmi 3
===> Analisi Numerica
===> Complessità
===> Computabilità
===> Data analysis e management
===> Ingegneria del software 2
===> Linguaggi Formali
===> Metodi algoritmici per l'ottimizzazione combinatoria
===> Programmazione Funzionale
===> Reti di Calcolatori 2
===> Ricerca Operativa
===> Sistemi Distribuiti 2
-----------------------------
Dottorandi
-----------------------------
=> Wall
=> Events
-----------------------------
Area Studenti
-----------------------------
=> Agorà
=> L'angolo del tecnico
=> Il Mercatino degli studenti
=> Software
===> -vecchia catalogazione [sarà rimossa a breve]-
=====> Proprietario
=====> Free Software
=====> Open Source
===> Approfondimenti
===> News
===> Studio
===> Videogiochi
===> Networking e telecomunicazioni
===> Sviluppo
===> Ufficio e produttività
===> Sistemi Operativi
=====> Microsoft Windows
=====> GNU/Linux, Unix e BSD
=====> Mac OS X
=====> Windows Phone
=====> Android
=====> iOS
=====> Altri
===> Eventi, conferenze, concorsi
=> Microsoft Student Partner - Avvisi e informazioni
=> ERASMUS/borse di studio internazionali
Caricamento in corso...