buonasera a tutti, sono uno studente di ingegneria, vorrei la vs. opinione sul mio svolgimento del secondo punto dell'esercizio in questione:
Si consideri l’accesso ad un palazzetto dello sport. Per l’ingresso ogni visitatore deve prima munirsi di biglietto e successivamente percorrere un corridoio prima di accedere al palazzetto. Nel caso in cui non riesca ad entrare in possesso di un biglietto non devono essere modellate ulteriormente le azioni del visitatore. Si utilizzi Java per modellare tale realtà. In particolare si dovrà:
1. Implementare la classe Visitatore come thread, assumendo che ogni visitatore sia identificato da un id numerico univoco ed abbia associate altre informazioni, quali: l’anno di nascita (compreso tra 1935 e 2000) e un valore che indica se il visitatore è un atleta. La probabilità che il visitatore sia anche atleta è pari a 0.1.
2. Implementare la classe Biglietteria e includere il metodo acquista per gestire l’acquisto dei biglietti. Si ipotizzi che un solo visitatore per volta abbia accesso allo sportello della biglietteria. Il palazzetto ha una capienza limitata e quindi saranno ammessi: tutti gli atleti, ma massimo 1000 visitatori non atleti. Inoltre, per ragioni di sicurezza, l’accesso sarà consentito ai soli visitatori maggiorenni. Si supponga che il tempo necessario ad effettuare l’acquisto sia casuale e inferiore a 18 secondi per i visitatori ordinari e inferiore a 6 secondi per gli atleti.
3. Implementare la classe Palazzetto aggiungendo i metodi occupa_corridoio, libera_corridoio, ed eventualmente gli opportuni attributi per gestire l’accesso palazzetto. Si assuma che il corridoio possa essere attraversato da dieci visitatori contemporaneamente di cui massimo 8 possono essere non atleti. Inoltre, viene data la precedenza in ingresso agli atleti.
4. Implementare nella classe Visitatore il metodo run, che utilizzi il codice precedentemente realizzato per simulare:
● l’arrivo dei visitatori alla biglietteria dopo un tempo casuale compreso tra 12 e 45 secondi;
● l’acquisto del biglietto;
● l’accesso del visitatore al palazzetto. Supporre che il tempo necessario per attraversare il corridoio sia casuale e compreso tra 21 e 110 secondi e che successivamente il visitatore entri nel palazzetto.
Infine realizzare il metodo main, simulando che il numero di cantanti sia 2000.