Dsy Network www | forum | my | didattica | howto | wiki | el goog | stats | blog | dona | rappresentanti
Homepage
 Register   Calendar   Members  Faq   Search  Logout 
.dsy:it. : Powered by vBulletin version 2.3.1 .dsy:it. > Didattica > Corsi A - F > Fondamenti di architettura e programmazione > [Laboratorio] Es x il 19-12 !PROROGATO al 9-1! Gestione Biblioteca
Pages (2): [1] 2 »   Last Thread   Next Thread
Author
Thread    Expand all | Contract all    Post New Thread    Post A Reply
Collapse
[D]ani[J]
dsy moderator

User info:
Registered: Aug 2003
Posts: 1380 (0.18 al dì)
Location:
Corso: F47
Anno:
Time Online: 17 Days, 14:25:28 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged
[Laboratorio] Es x il 19-12 Gestione Biblioteca

Postate qua i vostri commenti ecc... sull'esercizio di laboratorio GESTIONE BIBLIOTECA per il 19-12-2003

__________________
Dani
e-mail: DaniJ@dsy.it
...ahhh ste donne! :D
Buoniiiiiisssimaaaa!

11-12-2003 17:21
Click Here to See the Profile for [D]ani[J] Click Here to See the Blog of [D]ani[J] Click here to Send [D]ani[J] a Private Message Find more posts by [D]ani[J] Add [D]ani[J] to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
citrus
.arcimaestro.

User info:
Registered: Oct 2003
Posts: 382 (0.05 al dì)
Location: como
Corso: com. digitale
Anno: 2
Time Online: 2 Days, 14:39:24 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

come diavolo funzionano le hashtables??????????

ma sopratutto, come faccio a sapere quanti elementi contiene un hash tables?
ho provato con borrows.Size(); però questo metodo mi restituisce il numero di chiavi utilizzate e in questo caso non va bene perchè i libri noleggiati vengono tutti memorizzati con la stessa chiave (user), quindi questometodo restituisce sempre 1!!!!!!

io ho bisogno di sapere quanti oggetti sono mappati da una determinata chiave!
(in questo modo posso sapere quanti libri ha già noleggiato un determinato utente!)
... ma non trovo un metodo adatto.....
...
qualcuno sa aiutarmi?
denghiuuuuu

15-12-2003 14:35
Click Here to See the Profile for citrus Click here to Send citrus a Private Message Find more posts by citrus Add citrus to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
lockit
-:| Losef well-wisher |:-

User info:
Registered: May 2003
Posts: 88 (0.01 al dì)
Location: Milano
Corso: Comunicazione Digitale
Anno: 3
Time Online: 20:32:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Le hashtable funziona come una tabella di un database con due soli campi, uno è quello chiave che serve per riconoscere le "righe"(quindi non ci possono esere key doppie!) e l'atro e il dato che può essere anche ripetuto.

io ho usato un array di 3 hashtable con le key sempre associate allo user, per non duplicarle.

Sembra funzionare.

ciao

15-12-2003 23:35
Click Here to See the Profile for lockit Click here to Send lockit a Private Message Visit lockit's homepage! Find more posts by lockit Add lockit to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
citrus
.arcimaestro.

User info:
Registered: Oct 2003
Posts: 382 (0.05 al dì)
Location: como
Corso: com. digitale
Anno: 2
Time Online: 2 Days, 14:39:24 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

mmh!!
non male come idea.....
io mi ero fossilizzato su di un unico hashtable
ma in effetti nessuno ci vieta di usarne di più.....
bella 040381!!!

16-12-2003 17:05
Click Here to See the Profile for citrus Click here to Send citrus a Private Message Find more posts by citrus Add citrus to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
citrus
.arcimaestro.

User info:
Registered: Oct 2003
Posts: 382 (0.05 al dì)
Location: como
Corso: com. digitale
Anno: 2
Time Online: 2 Days, 14:39:24 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

... preò un problema mi sorge comunque.....
l'immortacci a sti minchia di hashtable!!!!
non hanno un costruttore vero e proprio giusto?
si crea una chiave
Book b1 = (Book)borrows.get(u);
e poi le si associa un oggetto
borrows.put(u, b);
....
allora io come faccio a mettere un hashtable in un array?
per intenderci non posso fare

array[0]=new Hashtable(key,object);

allora come se fa?

16-12-2003 17:33
Click Here to See the Profile for citrus Click here to Send citrus a Private Message Find more posts by citrus Add citrus to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
lockit
-:| Losef well-wisher |:-

User info:
Registered: May 2003
Posts: 88 (0.01 al dì)
Location: Milano
Corso: Comunicazione Digitale
Anno: 3
Time Online: 20:32:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by citrus
... preò un problema mi sorge comunque.....
l'immortacci a sti minchia di hashtable!!!!
non hanno un costruttore vero e proprio giusto?
si crea una chiave
Book b1 = (Book)borrows.get(u);
e poi le si associa un oggetto
borrows.put(u, b);
....
allora io come faccio a mettere un hashtable in un array?
per intenderci non posso fare

array[0]=new Hashtable(key,object);

allora come se fa?


Le Hashtable le crei una volta sola e poi le riempi, svuoti e leggi con i metodi di questa classe(put(), get(), ...).

Es:
import java.util.Hashtable;

class Esempio{
  //Variabile
  private Hashtable[] borrows = new Hashtable[3];

  //dentro al costuttore della classe
  public Esempio(){
    borrows[0] = new Hashtable();
    borrows[1] = new Hashtable();
    borrows[2] = new Hashtable();
  }

Scusate ora ho corretto.
Prima era sbagliato(e ho sclerato di brutto per capirlo) perchè scrivendo:

borrows[0]=borrows[1]=borrows[2]= new HastTable()

si crea un solo oggetto per tutti e 3 quindi modificandone uno si modificano tutti e tre


  //e nei metodi puoi usare tutte e tre le hashtable
  public Object get(Object key, int indiceArray){
    return borrows[indiceArray].get(key);
  }
}

Last edited by lockit on 22-12-2003 at 20:44

16-12-2003 18:25
Click Here to See the Profile for lockit Click here to Send lockit a Private Message Visit lockit's homepage! Find more posts by lockit Add lockit to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
foolish
bleak

User info:
Registered: Oct 2003
Posts: 3585 (0.46 al dì)
Location:
Corso:
Anno:
Time Online: 36 Days, 7:28:56 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

visto il server down webcen posto il testo per questo esercizio, l'altro è dall'alra parte

Gestione biblioteca

Considerare l'esempio della gestione di una biblioteca visto a lezione.
Derivare dalla classe User la classe UserWithCard con il privilegio di poter prendere in prestito fino a tre libri.
Il programma principale dovrà essere modificato in modo da prevedere l'operazione di emissione della tessera (che ovviamente da una tessera all'utente che la richiede. La tessera viene fornita dai punti di gestione e relativi bibliotecari (devono quindi essere modificate anche queste classi).
Analogamente dovrà essere modificato il punto di prestito in modo che l'Hashtable borrows ammetta più libri per lo stesso utente.
Nota: il modo più semplice per modificare le varie classi è sfruttare ereditarietà e polimorfismo. Derivare quindi nuove classi da quelle da modificare, ridefinire i metodi coinvolti, riscrivere quindi il main in modo che usi le classi definite.

__________________
The only way to discover the limits of the possible is to go beyond them into the impossible.
Arthur C. Clarke.

16-12-2003 19:55
Click Here to See the Profile for foolish Click Here to See the Blog of foolish Click here to Send foolish a Private Message Find more posts by foolish Add foolish to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
citrus
.arcimaestro.

User info:
Registered: Oct 2003
Posts: 382 (0.05 al dì)
Location: como
Corso: com. digitale
Anno: 2
Time Online: 2 Days, 14:39:24 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by 040381
Le Hashtable le crei una volta sola e poi le riempi, svuoti e leggi con i metodi di questa classe(put(), get(), ...).

Es:
import java.util.Hashtable;

class Esempio{
  //Variabile
  private Hashtable[] borrows = new Hashtable[3];

  //dentro al costuttore della classe
  public Esempio(){
    borrows[0] = borrows[1] = borrows[2] = new Hashtable();
  }

  //e nei metodi puoi usare tutte e tre le hashtable
  public Object get(Object key, int indiceArray){
    return borrows[indiceArray].get(key);
  }
}



ok grazie mille....
però ora ho visto che c'è un metodo RenderaBook() e TakeaBook() anche nella classe library (non solo nella LoanPoint) e anche questi usano un hashtable questa volta però per i libri.....
devo creare un array anche per questi?
... ogni volta che mi avvicino alla soluzione porca miseria mi accorgo che devo fare altre modifiche!!!!

oltretutto io non ho davvero ancora capito come diavolo è stata organizzata sta applicazione!!!!!!!!!!!!
ce la farà il nostro eroe???

(io ho una gran voglia di riscriverlo da zero ma non so se poi verrà accettato perchè così cadrebbe lo scopo dll'esercizio, che è quello di fare delle modifiche su di un programma già fatto!)
confermate?

Last edited by citrus on 16-12-2003 at 20:35

16-12-2003 20:33
Click Here to See the Profile for citrus Click here to Send citrus a Private Message Find more posts by citrus Add citrus to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
citrus
.arcimaestro.

User info:
Registered: Oct 2003
Posts: 382 (0.05 al dì)
Location: como
Corso: com. digitale
Anno: 2
Time Online: 2 Days, 14:39:24 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

come non detto....
...era una stronzata...
meglio che ci dorma sopra altrimenti qui passo fuori!

16-12-2003 21:40
Click Here to See the Profile for citrus Click here to Send citrus a Private Message Find more posts by citrus Add citrus to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Rocco.Li
38 Primavere, Dottore !

User info:
Registered: Sep 2003
Posts: 609 (0.08 al dì)
Location: BARLASSINA (MI)
Corso: COMUNICAZIONE DIGITALE
Anno: Finitooooo !!!!
Time Online: 8 Days, 2:31:26 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Dato che webcen e' ancora Down, e siamo a mercoledi !
Qualcuno sa gentilmente indicarmi il link preciso per la sottoposizione delle esercitazioni ?

Grazie

__________________
Alcuni uomini vedono le cose come sono e dicono: << Perche' ? >>
Io sogno le cose come non sono mai state e dico: << Perche' No ? >>
George Barnard Shaw, Commediografo.

"non preoccuparti troppo, comunque vada la vita, non ne uscirai vivo !" - anonimo

17-12-2003 08:21
Click Here to See the Profile for Rocco.Li Click Here to See the Blog of Rocco.Li Click here to Send Rocco.Li a Private Message Find more posts by Rocco.Li Add Rocco.Li to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Pigmalione
.simpatizzante.

User info:
Registered: Oct 2003
Posts: 12 (0.00 al dì)
Location: Varese
Corso: Comunicazione Digitale
Anno: Primo
Time Online: 8:09:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Questo è il sito per le sottoposizioni:
http://infogen.dsi.unimi.it/

__________________


  • Ogni soluzione genera nuovi problemi.

17-12-2003 08:43
Click Here to See the Profile for Pigmalione Click here to Send Pigmalione a Private Message Visit Pigmalione's homepage! Find more posts by Pigmalione Add Pigmalione to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
lockit
-:| Losef well-wisher |:-

User info:
Registered: May 2003
Posts: 88 (0.01 al dì)
Location: Milano
Corso: Comunicazione Digitale
Anno: 3
Time Online: 20:32:23 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by citrus
ok grazie mille....
però ora ho visto che c'è un metodo RenderaBook() e TakeaBook() anche nella classe library (non solo nella LoanPoint) e anche questi usano un hashtable questa volta però per i libri.....
devo creare un array anche per questi?
... ogni volta che mi avvicino alla soluzione porca miseria mi accorgo che devo fare altre modifiche!!!!

oltretutto io non ho davvero ancora capito come diavolo è stata organizzata sta applicazione!!!!!!!!!!!!
ce la farà il nostro eroe???

(io ho una gran voglia di riscriverlo da zero ma non so se poi verrà accettato perchè così cadrebbe lo scopo dll'esercizio, che è quello di fare delle modifiche su di un programma già fatto!)
confermate?


Devi capire come funziona il tutto a partire da LibraryManagmetSystem e quando trovi un metodo di una classe vai nella classe a vedere cosa fà, scoprirai che è tutta una cacscata che finisce alla classe Library lo spacchio è farsi lo schema mentale di come interagiscono le classi.

per esempio per prestare unu libro:

<LibraryManagerSystem>

llp istanza della classe LoanLibrarian(bibliotecario che presta) chiama il metodo takeBook(User u, Book b)

if(llp.takeBook(u, b))
   System.out.print("ecco il libro");

</LibraryManagerSystem>

llp e un istanza di LoanLibrarian quindi andiamo a vedere cosa fà in questa classe

<LoanLibrarian>
il bibliotecario(istanza di LoanLibrarian) chiede al Punto Prestiti(LoanPoint), di cui fà parte, se l'utente può ricevere un altro libro invocando il metodo della classe a cui è associato

return IlMioLoanPoint.takeBook(u, b)

</LoanLibrarian>


<LibraryLoanPoint>
il Punto Prestiti(LoanPoint) controlla in borrows se l'utente può ricevere un altro libro, se l'utente può prenderne un altro chiede alla biblioteca di dargli il libro che però potrebbe non esserci.

if(l'utente può prendere libri[qui dipende da te l'if l'ho messo giusto per far capire])
   if(LaMiaLibreria.takeBook(u))
      return true;

</LibraryLoanPoint>

<Library>

Qui la biblioteca controlla che il libro ci sia:
se c'è lo preleva e restituisce true
se non c'è restituisce false

</Library>

ciao

NB non ho davanti gli esercizi, magari i nomi delle classi non sono identici ma il ragionamento è giusto.
I tag <NomeClasse> li ho messi per far capire meglio in che file ci troviamo:
inizio file<classe>
fine file</classe>

17-12-2003 13:49
Click Here to See the Profile for lockit Click here to Send lockit a Private Message Visit lockit's homepage! Find more posts by lockit Add lockit to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
supernova
Mad For It

User info:
Registered: May 2003
Posts: 403 (0.05 al dì)
Location: Milan, London
Corso: Digital Comunication
Anno: I Don't Know, Not Yet.
Time Online: 3 Days, 4:56:55 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Raga Dsy è in down!!!! Mi devo scaricare le slides della biblioteca altrimenti come faccio il programma!!!! Qualcuno può postare le slides x fare gli esercizi????? Grazie Tante!!!!

__________________
" So I Start The Revolution From My Bed ". Noel Gallagher

17-12-2003 21:08
Click Here to See the Profile for supernova Click here to Send supernova a Private Message Find more posts by supernova Add supernova to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
supernova
Mad For It

User info:
Registered: May 2003
Posts: 403 (0.05 al dì)
Location: Milan, London
Corso: Digital Comunication
Anno: I Don't Know, Not Yet.
Time Online: 3 Days, 4:56:55 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Bella lo zio Citrus, mi sono scaricato le slides e il library. Ti sei sbattuto alla grande e ti ringrazio!!!!

__________________
" So I Start The Revolution From My Bed ". Noel Gallagher

17-12-2003 21:16
Click Here to See the Profile for supernova Click here to Send supernova a Private Message Find more posts by supernova Add supernova to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
foolish
bleak

User info:
Registered: Oct 2003
Posts: 3585 (0.46 al dì)
Location:
Corso:
Anno:
Time Online: 36 Days, 7:28:56 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

sottoposizioni spostate al 9 di gennaio

buon fine lezioni a tutti :) voi !!!

__________________
The only way to discover the limits of the possible is to go beyond them into the impossible.
Arthur C. Clarke.

18-12-2003 20:03
Click Here to See the Profile for foolish Click Here to See the Blog of foolish Click here to Send foolish a Private Message Find more posts by foolish Add foolish to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
All times are GMT. The time now is 10:18.    Post New Thread    Post A Reply
Pages (2): [1] 2 »   Last Thread   Next Thread
Show Printable Version | Email this Page | Subscribe to this Thread | Add to Bookmarks

Forum Jump:
Rate This Thread:

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
 

Powered by: vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento | Licenze | Thanks | Syndacate
Pagina generata in 0.051 seconds (79.50% PHP - 20.50% MySQL) con 28 query.