Fondamenti di Informatica I
Corso di Laurea in Ingegneria Informatica e Ingegneria Automatica
Si vuole realizzare un programma per la gestione di noleggi video. Per ciascun video da noleggiare sono memorizzate le seguenti informazioni: titolo del film, anno di produzione, status del video (in prestito o meno), nominativo della persona a cui il video è in prestito.
Parte 1.
Scrivere una classe Video
che implementi i seguenti metodi:
Video(String t, int a)
: costruttore che crea un video con
titolo t
, anno di produzione a
e che non
è in prestito;
String toString()
: che restituisce una stringa con tutte le
informazioni del video;
void prestato(String n)
: che modifica le informazioni del
video specificando che esso è in prestito alla persona
identificata dal nome n
;
void restituito()
: che modifica le informazioni del video
specificando che esso è stato restituito;
boolean inPrestito()
: che verifica se un video è in
prestito;
String chiHaIlVideo()
: che restituisce il nominativo della
persona che ha il video in prestito (oppure null
se esso non
è in prestito);
String getTitolo()
: che restituisce il titolo del video;
int getAnno()
: che restituisce l'anno di produzione del
video.
Programma di esempio:
ProvaVideo.java
Parte 2.
Scrivere una classe UsaVideo
, cliente di Video
, che
contiene il seguente metodo statico pubblico:
static int contaVideoNonInPrestito(Video[] d, int a)
: che,
dati un archivio di video d
, rappresentato come un array di
video, e un anno a
, restituisce il numero di video prodotti
nell'anno a
, che non sono in prestito.
Programma di esempio:
ProvaUsaVideo.java
Soluzioni:
Video.java
,
UsaVideo.java