Estratto del documento

Esempio prova di programmazione

Programma che simula il comportamento di una biglietteria composta da una sequenza. Si vuole realizzare un sistema di N sportelli. Presso ogni sportello si forma una diversa coda di persone in attesa di essere servite; una persona che arriva presso la biglietteria si accoda allo sportello con la coda più breve; ogni sportello serve la prima persona della propria coda. Questo comportamento viene rappresentato dal tipo di dato astratto "multicoda" (multiqueue).

Dettagli del test

Il candidato ha a disposizione il file MultiQueueTester.java, il quale contiene classi ed interfacce da utilizzare e/o completare secondo quanto qui indicato:

  • Queue ed EmptyQueueException. Rispettivamente, interfaccia che rappresenta il tipo di dato astratto "coda", ed eccezione che segnala che una coda è vuota. Non modificare.
  • MultiQueue. Interfaccia che rappresenta il tipo di dati astratto "multicoda". Leggere con attenzione i commenti all'interfaccia ed ai suoi metodi. Non modificare.
  • ArrayQueue. Classe che implementa Queue usando un array. Completare la classe scrivendone la parte privata e realizzandone i metodi pubblici. La classe deve inoltre sovrascrivere il metodo toString, che restituisca una stringa contenente gli elementi della coda, ciascuno su una riga diversa.
  • ArrayMultiQueue. Classe che implementa l'interfaccia MultiQueue usando un array di code. Completare la classe scrivendone la parte privata e realizzandone i metodi pubblici. La classe costruttore deve ricevere un parametro esplicito intero N > 0 e creare una multicoda vuota, costituita da una sequenza di N code vuote. La classe deve inoltre sovrascrivere il metodo toString, che restituisca una stringa contenente gli elementi delle N code della multicoda, secondo il seguente formato: (1) gli elementi delle N code vengono scritti in sequenza, secondo il formato del metodo toString della classe ArrayQueue (si veda il corpo di tale metodo), (2) la scrittura degli elementi della i-esima coda (0 ≤ i < N) comincia con la riga "CODA i:".
  • MultiQueueTester. Classe di collaudo. Completare la classe in modo che il suo metodo main realizzi il seguente comportamento:
    • Riceve un numero intero N come argomento sulla riga di comando;
    • Crea un oggetto di tipo ArrayMultiQueue, contenente N code, inizialmente vuote;
    • Accetta ripetutamente comandi dall'utente, introdotti da tastiera, finché l'utente non introduce il comando di terminazione del programma; i comandi disponibili sono:

Comandi disponibili

  • A: Aggiunge una persona alla multicoda. In questo caso il programma chiede di inserire da tastiera una stringa rappresentante il nome della persona.
Anteprima
Vedrai una selezione di 1 pagina su 1
Informatica I - esempio prova di programmazione in java Pag. 1
1 su 1
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher enricopava di informazioni apprese con la frequenza delle lezioni di Informatica 1 e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Padova o del prof Avanzini Federico.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community