Correction DEvoir Controle POO 2019/2020 /**** Classe Medecin****/ public class
Correction DEvoir Controle POO 2019/2020 /**** Classe Medecin****/ public class Medecin { public final int CodeCNAM; private String NomPrenom; private String Spécialité; public float Tarif; private float Recette; private int Nb_cons; public Medecin (int cc ,String NP, String S,float PT) //constructeur { this.CodeCNAM=cc; this.NomPrenom=NP; this.Spécialité=S; this.Tarif=PT; } public int getNbCons() {//0.5pts return Nb_cons; } public void SetNbCons() { this.Nb_cons ++;} public float getRecette() { return Recette; } public void setRecette(float Recette) {//0.5pts this.Recette = Recette; } public boolean verifier(Medecin M) { if((this.CodeCNAM==M.CodeCNAM)&&(this.NomPrenom.equals(M.NomPrenom))) return true; else return false; } @Override public String toString() { String CH="\n Code CNAM="+this.CodeCNAM+"\nNom Prenom ="+this.NomPrenom+"\nSpécialité="+this.Spécialité +"\nPleinTarif="+this.Tarif; return CH; } } /**** Classe Date****/ import java.util.Calendar; class Date {private int jour; private int mois; private int année; public Date (int j,int m, int a) { this.jour=j; this.mois=m; this.année=a; } public static Date getDate() /*** methode Static de la classe Date***/ { int j,m,a; Calendar c=Calendar.getInstance(); /* getInstance() c'est l'équivalent d'un constructeur dans la classe Calendar*/ j =c.get(Calendar.DAY_OF_MONTH); /*DAY_OF_MONTH attribut Static dans calendar*/ m =c.get(Calendar.MONTH)+1; /*MONTH attribut Static dans Calendar Veuillez noter que les mois du /*calendrier sont indexés à zéro; pour janvier, cette méthode renverra 0*/ a=c.get(Calendar.YEAR); /*Year attribut Static dans calendar*/ Date d=new Date(j,m,a); /**** création d'un objet de type Date****/ return d; } @Override public String toString() { return " "+Date.getDate().jour+"/"+Date.getDate().mois+"/"+Date.getDate().année; } } /**** classe consultation******/ public class consultation { private int CodeCons ; private String NomPrenomPatient; private String Spécialité; private Date DateCons; private Medecin LeMedecin; private String RégimeCNAMPatient ; public consultation(int cp,String NP,String RCP,String Sp) // constructeur { this.CodeCons=cp; this.NomPrenomPatient=NP; this.DateCons= Date.getDate(); this.RégimeCNAMPatient=RCP; this.Spécialité=Sp; } public boolean AffecterMedecin(Medecin M) { float r; if((M.getNbCons()<10)) { LeMedecin=M; M.SetNbCons(); r=M.getRecette()+CalculerTarifCons(); M.setRecette(r); return true; } else return false;} public float calculerTarifCons() { if((this.LeMedecin.codeCnam==0)||(!this.régimeCnamPatient.equals("Medecin de famille"))) return LeMedecin.tarif; else return (LeMedecin.tarif/2); } void afficher() { System.out.println("\nNom&Prenom :"+this.NomPrenomPatient+"\nLe:"+this.DateCons.toString()+"\nDr:"+ this.LeMedecin.toString() +"\nNet a payer:"+this.CalculerPrixPrestation()); } } /***** classe TEST*****/ import java.util.Scanner; public class TestD { public static void main (String[]args) { Medecin M1=new Medecin(12345,"MohamedGhorbel","Dentaire",40); Medecin M2=new Medecin(56789,"MohssenTaktak","Cardio",40); Scanner s = new Scanner(System.in); String NP,RC,S; int cc; System.out.println("introduire le code de la consultation"); cc=s.nextInt(); System.out.println("introduire le nom et le prenom du Patient"); NP=s.next(); System.out.println("introduire son régime CNAM "); RC=s.next(); System.out.println("introduire la spécialité "); S=s.next(); consultation c=new consultation(cc,NP,RC,S); if(c.AffecterMedecin(M1)) c.afficher(); } } uploads/S4/ correction-devoir-controle-poo-2019-2020-pdf.pdf
Documents similaires
-
15
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Fev 14, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 0.2333MB