Table des matières

TD2

Exercice 1 : Gestion de Compte Bancaire

Objectif : Travailler sur l’instanciation, les constructeurs et l’encapsulation.

Créer une classe CompteBancaire avec les attributs privés suivants :

Implémenter les méthodes suivantes :

Questions :

Exercice 2 : Surcharge de Méthodes pour les Calculs

Objectif : Travailler sur la surcharge de méthodes.

Crée une classe Calculatrice avec les méthodes suivantes :

Exemple :

calc = Calculatrice();
System.out.println(calc.addition(10, 5));  // Retourne 15
System.out.println(calc.addition(10, 5, 2));  // Retourne 17
System.out.println(calc.soustraction(10, 5));  // Retourne 5
System.out.println(calc.soustraction(10, 5, 2));  // Retourne 3

Exercice 3 : Gestion des Produits

Objectif : Travailler sur l'instanciation, les constructeurs et l'encapsulation.

Créer une classe Produit avec les attributs privés suivants :

Implémenter les méthodes suivantes :

Questions :

Exercice 4 : Classe pour les Vecteurs

Objectif : Travailler sur la surcharge des méthodes et l’instanciation.

Créer une classe Vecteur avec les attributs :

Implémenter les méthodes suivantes :

Exemple :

Vecteur v1 = Vecteur(2, 3);
Vecteur v2 = Vecteur(5, 7);
System.out.println(v1.ajouter(v2));  // Retourne un nouveau vecteur (7, 10)
System.out.println(v1.ajouter(1, 1));  // Retourne un nouveau vecteur (3, 4)

Questions :

Exercice 5 : Héritage et Polymorphisme avec des Animaux

Objectif : Travailler sur l'instanciation, les constructeurs et la surcharge.

Questions :

Exercice 6 : Bibliothèque de Livres

Objectif : Travailler sur l'instanciation, les constructeurs, l'encapsulation et les associations entre classes.

Crée une classe Livre avec les attributs privés suivants :

Implementer les méthodes suivantes :

Créer ensuite une classe Bibliotheque avec les attributs suivants :

Implementer les méthodes suivantes :

Question

Escape game

Objectif : Concevoir et implémenter un système simplifié pour un escape game en mode console. Les joueurs devront résoudre des énigmes dans des salles thématiques pour s’échapper avant la fin du temps imparti.

Consignes Générales

Cahier des Charges

1. Classes à Implémenter

EscapeGamesalles: List<Salle>joueurs: List<Joueur>ajouterSalle(Salle): voiddemarrerPartie(Joueur, Salle): voidafficherClassement(): voidSallenom: Stringenigmes: List<Enigme>tempsLimite: intestTerminee: booleanajouterEnigme(Enigme): voidresoudreEnigme(String, String): booleanestTerminee(): booleanafficherEnigmesNonResolues(): voidtoString(): StringEnigmetitre: Stringdescription: StringcodeSolution: StringestResolue: booleanresoudre(String): booleanestResolue(): booleantoString(): StringJoueurpseudo: Stringscore: intsallesTerminees: List<Salle>ajouterSalleTerminee(Salle): voidafficherStatistiques(): voidClasse principaleGère les salles et les joueurs.Peut lancer une partie.Une énigme peut être :- Un code à deviner- Un objet à trouver- Une devinetteUne salle a :- Un temps limite (en minutes)- Plusieurs énigmes à résoudrecontient10..*enregistre10..*contient11..*a terminé10..*

2. Fonctionnalités

🔹 Gestion des Énigmes

Une énigme a (attributs) :

Méthodes :

🔹 Gestion des Salles

Une salle a :

Méthodes :

🔹 Interaction en Console

Le programme doit permettre de :

Règles de gestion supplémentaires