Réaliser par : EL-ODMI SALMA.
DEVOIR : EXERCICE 6_SERIE 3 Encadrée par : OUATIQ AMINA.
MODULE : POO
ENONCE DE L’EXERCICE :
- Un compte bancaire possède à tout moment une donnée : son solde. Ce solde peut être positif (compte
créditeur)ou négatif (compte débiteur).
- Chaque compte est caractérisé par :
un code incrémenté automatiquement, par le nom du client titulaire du compte,et la date de sa création.
- À sa création, un compte bancaire a un solde nul et un code incrémenté.
- Il est aussi possible de créer un compte en précisant son solde initial.
-Utiliser son compte consiste à pouvoir y faire des dépôts, des retraits et des virements.
-Pour ces trois opérations, il faut connaître le montant de l’opération. L’utilisateur peut aussi consulter
le solde de son compte par la méthode toString().
-La méthode toString doit compacter les données du compte sous la forme suivante :
Compte {code : valCode, nomCli : valNomCli, creeLe : valDate, solde : valSolde, etat : valEtat}
Instructions :
1. Écrire la classe Compte Bancaire.
2. Définir une classe de test nommée Test Compte contenant la fonction main (), permettant de tester la
classe
Compte Bancaire avec les actions suivantes :
- Créer deux instances de la classe Compte Bancaire.
- Faire appel à la méthode deposer() de chaque instance pour déposer une somme quelconque dans ces -
Faire appel à la méthode retirer() de chaque instance pour retirer une somme quelconque de ces comptes.
- Faire appel à la méthode virement() pour virer de la 1ère instance vers la 2ème une somme quelconque.
- Afficher les données des deux comptes après chaque opération.
2
Analyse de l'exercice étape par étape
1. Compréhension de la classe Compte Bancaire :
o Chaque compte bancaire est caractérisé par :
▪ Un code unique auto-incrémenté.
▪ Le nom du titulaire du compte.
▪ La date de création.
▪ Le solde (initialement nul ou précisé lors de la création).
▪ Un état indiquant si le compte est créditeur (solde positif) ou débiteur
(solde négatif).
o Les opérations autorisées sur le compte sont :
▪ Dépôt d’une somme.
▪ Retrait d’une somme.
▪ Virement vers un autre compte.
2. Les fonctionnalités demandées :
o Méthodes pour réaliser des dépôts, retraits, et virements.
o Une méthode toString pour afficher les informations du compte de manière
compacte.
o Gestion du code auto-incrémenté pour identifier chaque compte.
3. Programme principal TestCompte :
o Créer deux comptes bancaires.
o Tester les trois opérations sur les comptes :
▪ Déposer une somme sur chaque compte.
▪ Retirer une somme sur chaque compte.
▪ Effectuer un virement entre les comptes.
o Afficher les informations des comptes après chaque opération.
3
Étapes à suivre pour résoudre l'exercice
1. Créer la classe Compte Bancaire :
o Attributs nécessaires : code, nomClient, solde, dateCreation, etat.
o Utiliser un attribut statique pour gérer l'incrémentation automatique du code.
2. Implémenter les méthodes principales :
o deposer(double montant) : Ajoute une somme au solde.
o retirer(double montant) : Soustrait une somme au solde (avec vérification si
nécessaire).
o virement(CompteBancaire autreCompte, double montant) : Transfère une
somme vers un autre compte.
o toString() : Retourne les informations sous forme compacte.
3. Créer une classe TestCompte :
o Instancier deux comptes.
o Effectuer les opérations demandées.
o Afficher les informations après chaque opération.
4
Code JAVA :
5
Résultat de l'exécution du code Java :
6
Compte rendu de l'exercice
1. Objectif :
o Modéliser un compte bancaire avec des fonctionnalités de base : dépôt,
retrait et virement.
o Gérer l'identifiant unique pour chaque compte.
2. Méthodologie :
o Utilisation d’un compteur statique pour gérer les codes uniques.
o Mise à jour de l’état du compte après chaque opération.
3. Résultats obtenus :
o Les opérations sur les comptes fonctionnent correctement.
o Les informations sont affichées au format demandé via toString.
4. Points clés :
o Les concepts d'encapsulation et d'attributs statiques sont mis en œuvre.
o Le programme peut facilement être étendu à d'autres fonctionnalités (par
exemple, historique des opérations).
5. Conclusion :
o Cet exercice illustre la gestion des objets complexes en POO.
o Il montre comment utiliser des attributs statiques pour gérer des identifiants
uniques.