Professional Documents
Culture Documents
Esercizio 1
Scrivere un programma Java caratterizzato dal solo metodo main. Questo programma deve:
(1) leggere un numero intero N digitato dall'utente (tramite l'apposito metodo della classe
SavitchIn);
(2) N stringhe S1, S2, ..., SN digitate dall'utente dopo il numero N (tramite
l'apposito metodo della classe SavitchIn);
(3) stampare a video la più corta tra le stringhe S1, S2, ..., SN.
Ad esempio:
Svolgimento
class Esercizio {
public static void main (String [] args) {
String stringaPiuCorta, s;
if (numStringhe > 0) {
stringaPiuCorta = SavitchIn.readLine();
s = SavitchIn.readLine();
stringaPiuCorta = s;
}
}
1
} else {
Esercizio 2
Scrivere un metodo Java statico chiamato isIdentity che riceve in ingresso una matrice
(vettore bidimensionale) A di numeri interi e restituisce come risultato un valore booleano uguale a
true se la matrice A è uguale alla matrice identità e uguale a false altrimenti.
Svolgimento
static boolean isIdentity (int [][] A) {
tuttoOk = false;
}
}
}
return(tuttoOk);
}
2
Esercizio 3
Scrivere un metodo Java statico chiamato prodottoMatrici che riceve in ingresso due matrici
(vettori bidimensionali) A e B di numeri reali. Il metodo prodottoMatrici deve:
Svolgimento
double[][] M;
double somma;
if (A.length != B[0].length) {
// ... stampa di errore e terminazione
} else {
somma = 0;
M[i][j] = somma;
}
}
}
return(M);
}
3
Esercizio 4
• Una classe Pila, che realizza una pila di certificati di residenza, caratterizzata da un
metodo per inserire un nuovo certificato sulla testa della pila, un metodo per togliere un
elemento dalla pila prendendolo dalla testa e un metodo per stampare tutti i certificati che
sono nella pila. I parametri del metodo che inserisce i certificati nella pila devono essere un
nome, un cognome e una città (in altri termini, chi usa questo metodo può non essere a
conoscenza dell'esistenza della classe CertificatoDiResidenza).
• Una classe ImpiegatoComunale contenente il metodo main che istanzia una pila di
certificati di residenza, vi inserisce un numero a piacere di certificati e successivamente
elimina i certificati dalla pila fino a che non trova in testa alla pila un certificato
appartenente a una persona di nome Mario Rossi. Una volta trovato questo certificato,
stampa la città di residenza di Mario Rossi.
Svolgimento
class CertificatoDiResidenza {
String nome;
String cognome;
String citta;
CertificatoDiResidenza succ;
void stampa() {
System.out.println(nome + " " + cognome + " " + citta);
}
}
4
class Pila {
CertificatoDiResidenza primo;
primo = c;
}
void cancella() {
if (primo != null) {
primo = primo.succ;
}
}
void stampa() {
CertificatoDiResidenza c = primo;
while (c != null) {
c.stampa();
c = c.succ;
}
}
}
5
class ImpiegatoComunale {
public static void main (String [] args) {
p.cancella();
}
System.out.println(p.primo.citta);
}
}