11.07.2015 Views

Soluzioni Esercizi Q2 (pdf, it, 131 KB, 3/23/09)

Soluzioni Esercizi Q2 (pdf, it, 131 KB, 3/23/09)

Soluzioni Esercizi Q2 (pdf, it, 131 KB, 3/23/09)

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

8 Java: esercizi di ricap<strong>it</strong>olazione<strong>Esercizi</strong>o <strong>Q2</strong> 21Si progetti una classe di nome Treno, la quale istanzia oggetti in grado di rappresentare la potenza di traino della locomotiva,il numero di vagoni e il peso di un treno. Si assuma che l’oggetto abbia senso solo se il peso del treno non supera la potenzae se il numero di vagoni è inferiore a 10: quest’ultimo campo dovrà essere pubblicamente accessibile a tutte le classi cheintendano adoperare le risorse forn<strong>it</strong>e dalla classe Treno. La classe contenga:1. un costruttore Treno(int p), il quale costruisce un oggetto che modella un treno formato dalla sola locomotiva dipotenza p2. un costruttore Treno(int p, int n, int m), il quale se possibile costruisce un oggetto che modella un treno formatodalla locomotiva di potenza p più n vagoni ciascuno pesante m, altrimenti rest<strong>it</strong>uisce la sola locomotiva di potenza p3. un metodo boolean accodaVagone(int m), che se possibile aggiunge al treno modellato un vagone di massa m, e intal caso rest<strong>it</strong>uisce vero; altrimenti rest<strong>it</strong>uisce falso4. un metodo int sganciaVagone(), che se possibile elimina il vagone di coda del treno modellato e in tal caso rest<strong>it</strong>uiscela sua massa; altrimenti rest<strong>it</strong>uisce 05. un metodo int quantoPesa(), che rest<strong>it</strong>uisce il peso del treno modellato6. un metodo int quantoResta(), che rest<strong>it</strong>uisce il peso che può essere ancora aggiunto al treno7. un metodo int quantiVagoni(), che rest<strong>it</strong>uisce il numero dei vagoni che attualmente formano il treno8. un metodo String toString(), che rest<strong>it</strong>uisce il modello del treno nel formato ”:m1:m2:...”, in cui p è la potenzadella locomotiva e ciascun elemento tra caratteri due punti contiene la massa m del vagone i-esimo.Per modellare i vagoni si consiglia di adoperare un array di interi mass[i], in cui ciascun elemento contiene la massa m delvagone i-esimo. La classe dovrà far parte di un package di nome myclasses accessibile da ambiente Java.Si scriva infine una classe di nome TestTreno che contenga delle semplici istruzioni per la verifica del corretto funzionamentodei metodi della classe Treno.package myclasses;public class Treno {public static final int MAX_VAG = 10;private int power, mTot, lunghTreno;private int[] mass = new int[MAX_VAG];public Treno(int p, int n, int m) {if (n>10 || n*m>p) {power = p;for (int i=0; i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!