tp noté dev

This commit is contained in:
Simon SAYE BABU 2023-12-06 15:31:35 +01:00
parent 8f446eb533
commit 30353e3c72
9 changed files with 219 additions and 0 deletions

View File

@ -0,0 +1,43 @@
/**
* Classe represantant un billet
*/
public class Billet {
/**
* La valeur d'un Billet
*/
Denomination valeur;
/**
* Constructeur de Billet.
*
* @param val La valeur d'un Billet.
*/
public Billet(Denomination val){
this.valeur = val;
}
/**
* Methode renvoyant un entier correspondant a la valeur d'un billet.
* @return renvoie 0 si le billet est invalide.
*/
public int getInt(){
int output;
switch(this.valeur)
{
case Un:
output = 1;
case Cinq:
output = 5;
case Dix:
output = 10;
/*case Vingt:
output = 20;*/
default:
output = 0;
}
return output;
}
}

View File

@ -0,0 +1,10 @@
/**
* Classe correspondant aux différentes valeurs possible d'un billet.
* (Un billet peut avoir les valeurs suivantes Un, Cinq, Dix, Vingt)
*/
public enum Denomination {
Un,
Cinq,
Dix;
//Vingt;
}

View File

@ -0,0 +1,57 @@
import java.util.*;
/**
* Classe represantant un Individu
*/
public class Individu {
/**
* Attribut qui definie le nom.
*/
public String nom;
/**
* Attribut qui permet de contenir les différent billets d'un individu.
*/
public List<Billet> monnaie;
/**
* Constructeur de la classe Individu
*
* @param NomIndividu le nom de l'individu
*/
public Individu(String NomIndividu){
nom = NomIndividu;
monnaie = new ArrayList<Billet>();
}
/**
* Methode pour rajouter de la monnaie a un Individu.
* @param argent le billet qui est ajouté
*/
public void addMonaie(Billet argent){
monnaie.add(argent);
}
/**
* Methode renvoyant la valeur de tous les billet en possession de l'individu.
* @return renvoie un entier correspondant.
*/
public int getInt(){
int somme = 0;
for (Billet billet : monnaie) {
somme += billet.getInt();
}
return somme;
}
/**
* Methode permettant de payer un autre individu d'une certaine somme.
* @param destinataire la personne qui recevra l'argent.
* @param somme la valeur a donné au destinataire.
* @return l'entier en retour change selon le resultat de la transaction :
* 0 si la transaction est reussite; 1 si la transaction a échoué car le payeur n'a pas assez d'argent; 2 si la transaction a échoué car le destinataire n'a pas assez de monnaie; 3 si il ya eu une erreur.
*/
public int payer(Individu destinataire, int somme){
return 3;
}
}

View File

@ -0,0 +1,25 @@
public class Main {
public static void main(String[] args) {
//Création des individu
Individu Titi = new Individu("Titi");
Individu Toto = new Individu("Toto");
//Ajout de l'argent de Titi
Titi.addMonaie(new Billet(Denomination.Dix));
Titi.addMonaie(new Billet(Denomination.Dix));
Titi.addMonaie(new Billet(Denomination.Cinq));
Titi.addMonaie(new Billet(Denomination.Cinq));
Titi.addMonaie(new Billet(Denomination.Cinq));
//Ajout de l'argent de Toto
Toto.addMonaie(new Billet(Denomination.Dix));
Toto.addMonaie(new Billet(Denomination.Un));
Toto.addMonaie(new Billet(Denomination.Un));
Toto.addMonaie(new Billet(Denomination.Un));
}
}

View File

@ -0,0 +1,10 @@
/**
* Classe correspondant aux différentes valeurs possible d'un billet.
* (Un billet peut avoir les valeurs suivantes Un, Cinq, Dix, Vingt)
*/
public enum Denomination {
Un,
Cinq,
Dix;
//Vingt;
}

View File

@ -0,0 +1,52 @@
import java.util.*;
/**
* Classe represantant un Individu
*/
public class Individu {
/**
* Attribut qui definie le nom.
*/
public String nom;
/**
* Attribut qui permet de contenir les différent liasses de billets d'un individu.
*/
public List<Liasse> monnaie;
/**
* Constructeur de la classe Individu
*
* @param NomIndividu le nom de l'individu
*/
public Individu(String NomIndividu){
nom = NomIndividu;
monnaie = new ArrayList<Liasse>();
}
/**
* Methode pour rajouter de la monnaie a un Individu.
* @param argent le billet qui est ajouté
*/
public void addMonaie(Liasse argent){
monnaie.add(argent);
}
/**
* Methode renvoyant la valeur de tous les billet en possession de l'individu.
* @return renvoie un entier correspondant.
*/
public int getInt(){
}
/**
* Methode permettant de payer un autre individu d'une certaine somme.
* @param destinataire la personne qui recevra l'argent.
* @param somme la valeur a donné au destinataire.
* @return l'entier en retour change selon le resultat de la transaction :
* 0 si la transaction est reussite; 1 si la transaction a échoué car le payeur n'a pas assez d'argent; 2 si la transaction a échoué car le destinataire n'a pas assez de monnaie; 3 si il ya eu une erreur.
*/
public int payer(Individu destinataire, int somme){
return 3;
}
}

View File

@ -0,0 +1,11 @@
/**
* Les differentes liasses d'un individu
*/
public class Liasse {
/**
* Attribut qui permet de contenir les différentes Liasses d'un individu.
*/
public List<MonoLiasse> monnaie;
}

View File

@ -0,0 +1,11 @@
public class MonoLiasse {
/**
* La valeur d'UN biller de cette Liasse
*/
Denomination valeur;
/**
* Le nombre de billet dans cette liasse
*/
int nombre;
}

Binary file not shown.