Scrivi la classe PariDispariWrapper
che valuta il valore intero passato come primo argomento da linea di comando e, se il valore è pari stampa “PARI”, altrimenti stampa “DISPARI”. Nel caso che il valore passato non sia intero è necessario gestire l’eventuale errore in maniera appropriata. Qualche esempio:
$ java PariDispariWrapper 3
DISPARI
$ java PariDispariWrapper 6
PARI
$ java PariDispariWrapper 8
PARI
Se non vengono passati argomenti il programma termina:
$ java PariDispariWrapper
$
Se vengono passati argomenti non appropriati:
$ java PariDispariWrapper "Testo"
ERRORE: il valore Testo non è accettabile
$ java PariDispariWrapper 5.3
ERRORE: il valore 5.3 non è accettabile
Scrivere un programma che, dati due argomenti da linea di comando, stampi il risultato della divisione del primo argomento per il secondo (utilizza numeri interi).
Scrivi due varianti dello stesso programma utilizzando rispettivamente un blocco try catch e una selezione per gestire la possibile divisione per zero.
Scrivi la classe MediaMista
che accetta delle note scolastiche e/o dei giudizi e poi ne calcola la media. Il programma deve:
Riprendi il tuo codice della classe Calcolatrice
e modificalo secondo le specifiche seguenti:
1 + 3 + 5
).Scrivi la classe TimeConverter2
che converte un tempo espresso in ore, minuti e secondi in secondi.
convertInt
Per convertire i 3 argomenti da String
a int
devi creare il metodo:
public static int convertInt(String s) throws NumberFormatException
Se la stringa s
non può essere convertita in un numero intero, il metodo solleva una NumberFormatException
.
main
Il metodo main
deve:
next()
della classe Scanner
(non è permesso utilizzare nextInt()
).convertInt
per ricavarne i valori interi.Ad esempio - per 1 ora, 2 minuti e 3 secondi - il programma stampa 3723
:
1:2:3 corrispondono a 3723 secondi.
Se il valore fornito per le ore
non è appropriato il programma stampa:
ore: valore non valido <valore>
Se il valore fornito per i minuti
non è appropriato il programma stampa:
minuti: valore non valido <valore>
Se il valore fornito per i secondi
non è appropriato il programma stampa:
secondi: valore non valido <valore>
Scrivi la classe Calcolatrice3
contenente il metodo:
public static int calcola(String[] espressione)
Tale metodo valuta le stringhe contenute nell’array espressione
che rappresentano le parti di un’espressione aritmetica e ne calcola il valore.
Ad esempio per {"1", "+", "2"}
il metodo ritorna 3
; mentre per {"3", "*", "3"}
ritorna 9
.
Gli operatori ammessi sono '+'
, '-'
, '*'
, '/'
. Gli operandi devono essere dei numeri interi.
Se l’espressione da valutare contiene un operatore o degli operandi non validi, il metodo ritorna 0.
Scrivi la classe TimeConverter
che converte un tempo espresso in ore, minuti e secondi (forniti come argomenti da linea di comando) in secondi.
convertInt
Per convertire i 3 argomenti da String
a int
devi creare il metodo:
public static int convertInt(String s) throws NumberFormatException
Se la stringa s
non può essere convertita in un numero intero, il metodo solleva una NumberFormatException
.
main
Il metodo main
cattura i 3 argomenti, usa il metodo convertInt
per ricavarne i valori interi e poi stampa a terminale il risultato della conversione.
Ad esempio - per 1 ora, 2 minuti e 3 secondi - il programma stampa 3723
:
java TimeConverter 1 2 3
1:2:3 corrispondono a 3723 secondi.
Se il numero di argomenti fornito non è sufficiente, il programma termina stampando:
Utilizzo: java TimeConverter <h> <m> <s>
Se il valore fornito per le ore
non è appropriato il programma stampa:
ore: valore non valido <valore>
Se il valore fornito per i minuti
non è appropriato il programma stampa:
minuti: valore non valido <valore>
Se il valore fornito per i secondi
non è appropriato il programma stampa:
secondi: valore non valido <valore>