Académique Documents
Professionnel Documents
Culture Documents
Exercice 1 :
Nous souhaitons écrire une application permettant d'afficher les courriers présents dans une boîte aux
lettres, de déterminer le nombre de courriers invalides, et de calculer le coût total d'affranchissement
des courriers.
Une boîte aux lettres peut contenir un nombre limité de courriers. Pour le cas de cet exercice, les
courriers peuvent inclure des lettres ou des publicités.
2. en mode d’expédition express : les montants précédents sont doublés, quelque soit le type de
courrier;
3. seul le courrier valide est affranchi;
4. un courrier n’est pas valide si l’adresse de destination est vide;
1
5. Les publicités sont considérées comme des courriers commerciaux qui bénéficient d’une
déduction de 20% du montant d’affranchissement.
Partie 1
Lettre
Poids : 200.0 grammes
Express : oui
Destination : Ariana
Prix : 7.4 DT
Format : A3
Exemple 2 d’affichage :
Publicité
(Courrier invalide)
Poids : 3000.0 grammes
Express : non
Destination :
Prix : 0.0 DT
1-2 Réaliser une interface Commercial offrant une méthode permettant de calculer la valeur de la
déduction. La méthode aura alors la signature suivante : double deduction()
1-3 Réaliser les classes Lettre et Publicité, en prévoyant pour chaque classe :
o un constructeur paramétré, et
o la redéfinition des méthodes nécessaires.
o On ajoute le type de courrier lors de la redéfinition de la méthode toString() dans les sous
classes (comme dans les exemples d’affichage en haut)
o Les attributs des classes Lettre et Publicité sont privés.
Partie 2
On se propose maintenant de réaliser une classe Boite caractérisée par la liste des courriers pouvant
être envoyé. Cette classe offre les méthodes suivantes :
2
Constructeur paramétré par le nombre de courrier maximum pouvant être envoyé.
Une méthode ajouterCourrier : permet d’ ajouter un nouveau courrier dans la boite
une méthode affranchir() permettant de retourner le montant total d'affranchissement du
courrier de la boîte.
une méthode courriersInvalides() calculant et retournant le nombre de courriers invalides
présents dans la boîte aux lettres.
une méthode afficher() affichant le contenu de la boîte aux lettre (on indiquera alors quels
courriers sont invalides).
Partie 3 :
Avec le programme principal fourni, vous devriez avoir une exécution telle que (le prix indique le
coût d'affranchissement):
Lettre
(Courrier invalide)
Poids : 800.0 grammes
Express : non
Destination :
Prix : 0.0 DT
Format : A4
Publicité
Poids : 1500.0 grammes
Express : oui
Destination : Manouba
Prix : 15.0 DT
Publicité
(Courrier invalide)
Poids : 3000.0 grammes
Express : non
Destination :
Prix : 0.0 DT
3
Exercice 2 :
On souhaite créer une application orientée objet java qui permet de gérer des comptes bancaires.
Chaque compte est défini par un code et son solde. Il existe deux types de comptes, les comptes
courants et les comptes épargne. Un compte courant possède en plus un découvert. Un compte
épargne est un compte qui possède en plus un taux d’intérêts.
Chaque compte peut avoir plusieurs opérations. Il existe deux types d’opérations : Versement et
Retrait. Chaque opération est définie par son numéro, sa date et son montant.
Travail à faire :
1- Etablir un diagramme de classe
2- Ecrire le code java des classes :
Compte, CompteCourant et CompteEpargne,
Opération, Versement et Retrait
3- Ecrire le code java d’une application qui répond aux besoins spécifiés
size() retourne le nombre d'éléments rangés dans la liste ; les éléments de la liste sont rangés
dans des indices compris entre 0 et size() - 1 ;
get(int i) retourne l'élément qui se trouve à l'indice i ;
s'il s'agit de ArrayList<E>, add(E element) ajoute element à la fin de la liste et augmente
en conséquence la taille de celle-ci ;
s'il s'agit de ArrayList<E>, set(int i, E element) remplace l'élément qui se trouve à
l'indice i par element ; on ne peut pas insérer un élément au-delà de l'indice size() - 1 ;.