Vous êtes sur la page 1sur 2

UNIVERSITE DE SOUSSE

Institut Suprieur dInformatique et des


Techniques de Communication
Hammam Sousse

Enseignant :Saoudi Haythem

programmation
Java

A.U.2016/2017

TP N3
Les Tableaux

Classe: 1DNI

Enonc du problme:
1- Crez une classe Livre ne possdant que des attributs privs sachant quun Livre est
caractris par son titre, son auteur, le nombre de page qui le constitue et le prix.
Doter cette classe dun (des) constructeur (s) adquat.
Doter cette classe des mthodes pour rcuprer ou accder aux diffrents attributs.
Redfinir la mthode toString() afin davoir une reprsentation dun objet de la
classe Livre de cette faon : livre de titre JAVA crit par Ali Ben Salim ayant
500 pages et de prix 200.5 Dinars .
2- Crez une classe Etagre pour reprsenter une tagre qui peut contenir un certain nombre
de livres (fixe pour chaque tagre).
La classe Etagere contient :
Deux attributs :

Un tableau de livre
Le nombre des livres dans une tagre

Un constructeur :

Un constructeur Etagere(int nbMax) pour rserver un tableau de nbMax


Livre.

Les mthodes :

boolean ajouter(Livre) permettant dajouter des livres la fin de l'tagre. Il devra


tre impossible d'ajouter des livres dans une tagre pleine.

Livre getLivre(int) permettant de rcuprer un livre dont on donne la position sur


l'tagre (le livre reste sur l'tagre, on rcupre simplement une rfrence sur le
livre). La mthode renverra une instance de Livre. La position du premier livre
d'une tagre devra tre 1 (et pas 0, bien que le livre soit rang dans la premire
position du tableau, qui est d'indice 0).

int chercher(String, String) permettant de chercher sur l'tagre un livre repr


par son titre et son auteur. Cette mthode renvoie la position du livre dans l'tagre
(ou 0 si le livre n'y est pas). S'il y a plusieurs livres avec le mme titre et le mme
auteur, la mthode renvoie celui qui a le plus petit indice.
1

une autre mthode semblable la prcdente, mais elle renvoie un tableau de


positions (int[] nomMethode())s'il y a plusieurs livres qui ont ce titre et cet
auteur. On aimerait appeler cette mthode "chercher" ; est-ce possible ? Le tableau
aura pour taille le nombre de livres trouvs.
Remarque : Utiliser la mthode arraycopy (src, srcPos, dest, destPos, length) de
la classe System pour copier les lments dun tableau un autre.

Livre[] chercher(String) permettant de rechercher tous les livres d'un auteur. Cette
fois-ci, les mthodes renvoient un tableau de livres.

void enleverLivre(String, String) permettant denlever des livres (un livre est
repr par son auteur et son titre). Vous "tasserez" les livres vers le dbut quand
vous enlverez un livre.

void affiche() permettant dafficher le contenu dun tagre (tableau des livres).

3- Ecrire la classe Main qui contient la mthode main permettant de tester la classe Etagere.