I Compitino | Home | III Compitino
Esercizio 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13
String[] settimana = {"lunedì", "martedì", "mercoledì", "giovedì", "venerdì"};
mercoledì
mercoledì
nell’array settimana
giovedì
e
'
in venerdì
e
' in venerdì
settimana.length
costruendo la tabella di verità per verificarlo (i simbolia && (b || c) (!c || !b) && !a
v
e f
indicano vero e falso).
Dire comunque in che relazione stanno le due espressioni date.
Parole
che contenga una parola nel campo privato valore
.
Definirne un costruttore senza parametri per inizializzare il campo alla stringa nulla e un altro con un parametro di tipo
String
:
Dire quale concetto di Java consente la definizione dei due costruttori con lo stesso nome e cosa li contraddistingue.public class Parole { ... }
contrai
della classe Parole
che accetta un parametro di tipo String
e riporta un dato di tipo
String
che contiene solo i caratteri del parametro di indice pari (0 incluso), realizzato mediante un ciclo
for
.
contrai(“macchina”)
produce la stringa “mchn
”.
Rettangolo
definire il metodo statico trasformazione(Rettangolo)
che riporta il il riferimento a un nuovo oggetto della classe Rettangolo
che abbia ampiezza e altezza
doppia rispetto ai dati del parametro e stessa origine.
Class Rettangolo { private int amp; private int alt; private Point origine; Rettangolo(int x, int y, int w, int h) { this.amp = w; this.alt= h; this.origine = new Point (x,y); } static Rettangolo trasformazione(Rettangolo unRettangolo) { ... }
Scrivere l’output dei seguenti spezzoni di codice e valutare il valore delle variabili richieste ad ogni ciclo:final int MAX = 2, LIMITE = 20; int num1 = 8, num2 = 12, num3 = 21;
if (num2 < num1) if (num3 < LIMITE) System.out.println ("qui"); else System.out.println ("quo"); System.out.println ("qua"); while (num1 <= LIMITE) { if (num3++ / num1 < MAX) System.out.println ("pippo"); else System.out.println ("pluto"); num1 *= 2; }
num1: num2:
while (num2 >= MAX) { if (num2-- % 2 != 0) continue; System.out.println (num2); }
num1: num2:
Fiore
definita dal codice:
public class Fiore { Fiore (int i) { } Fiore (float x) {} }
new Fiore()
è corretta.
Analisi
usa un vettore di lunghezza MAX
per contare le occorrenze di numeri casuali interi i
generati durante una sessione (0 <= i < MAX
).
Scrivere un ciclo while
in cui si effettua il conteggio (si esce dal ciclo al primo numero casuale
che supera o è uguale all’estremo superiore MAX
dell’intervallo). Si scriva inoltre un ciclo for
per stampare il risultato del conteggio solo per i numeri casuali effettivamente generati.
public class Analisi { public static void main (String [] args) { final int MAX = 5; int [] vettore = new int [MAX]; int i = 0; while ( ) { ... } for ( ) ... } }
[1 2 3 0 4]
.
In questo caso la stampa dovrà essere come nella tabella seguente.
Si completi la tabella trovando una sequenza di numeri casuali che potrebbero aver causato quell’output.
0 1 1 2 2 3 4 4
Stilo
seguente, completare il costruttore Stilo(int, String)
e il metodo boolean uguale(Stilo)
,
che verifica che un’istanza della classe e un’altra passata come parametro abbiano i campi d’istanza uguali.
public class Stilo { private String tipo; private int pennino; private String inchiostro; private String colore; public Stilo(int pen, String tipo) { ... } public boolean uguale(Stilo p) { ... } public void caricaInchiostro(String c) { this. inchiostro = c } public String getTipo() { return this.tipo; } }
Stilo
.
Dire se il codice causa la stampa del numero 1
o del numero 2
o causa un errore:
public class TestStilo { public static void main(String[] a) { Stilo pelikan, parker; parker.caricaInchiostro(“rosso”); pelikan.caricaInchiostro(“blu”); if (parker.uguale(pelikan)) System.out.println(“1”); else System.out.println(“2”); } }
ConColore
nell’esercizio 12
seguente.
Completare lo spezzone in modo da evitare errori di compilazione.
ConColore { void setColore(String) String getColore() }
Stilo
in modo da evitare errori di compilazione.
class Stilo implements ConColore { ... }
ConColore
nell’esercizio 12
seguente.
Completare lo spezzone in modo da evitare errori di compilazione.
ConColore[] deposito = new ConColore[3]; deposito[0] = new Stilo(0, “pelikan”); deposito[1] = new Stilo(1, “parker”); deposito[2] = new Stilo(2, “mont blanc”); for (i=0; i < deposito.length; i++) stampa(deposito[i].getColore())
stampa()
)
Esercizio 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13