Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ Section : SEIoT2 TP1 Enseignante : Anissa BEN TAHER Matière : Programmation orientée objet Correction TP3 JAVA EXERCICE 1 CompteBancaire -numeroCompte : int -solde : float +deposerArgent( float montant) +retirerArgent(float montant) -verifierSolde() :boolean +afficherInformationCompte() import java.util.Random; public class CompteBancaire{ private int numeroCompte; private float solde; Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ CompteBancaire( float solde) { this.numeroCompte=identifiantCompteBancaire(); this.solde=solde; } private int verifierSolde(float montant){ if (solde>montant) { return 1; }else{ return 0; } } private int identifiantCompteBancaire() { int x=(int)(Math.random()*10000); return x; } public void deposerArgent( float montant){ this.solde+=montant; } public void retirerArgent(float montant){ if(verifierSolde(montant)==1){ this.solde-=montant; } else { Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ System.out.println("Solde insuffisant !"); } } public int getNumeroCompte(){ return this.numeroCompte; } public float getSolde(){ return this.solde; } public void afficherInformationCompte() { System.out.println("Le compte numéro: "+this.numeroCompte+ " possède le solde= "+this.solde); } } public class TestCompte{ public static void main (String[] args){ CompteBancaire cpt1= new CompteBancaire(2000); CompteBancaire cpt2= new CompteBancaire(1000); cpt1.afficherInformationCompte(); cpt2.afficherInformationCompte(); cpt1.deposerArgent(1000); cpt2.retirerArgent(500); Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ cpt1.afficherInformationCompte(); cpt2.afficherInformationCompte(); } } EXERCICE 2 public class Date{ private int jour; private int mois; private int annee; Date(int jour, int mois, int annee){ this.jour=jour; this.mois=mois; this.annee=annee; } public int getJour(){ return this.jour; } public int getMois(){ return this.mois; } public int getAnnee(){ Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ return this.annee; } private boolean bissextille(int annee){ if ((annee % 400 == 0) || ((annee % 4 == 0) && (annee % 100 != 0))) { return true; } else { return false; } } public int nombreJours(Date d){ int mois=d.getMois(); boolean b=bissextille(d.getAnnee()); if(mois==1||mois==3||mois==5||mois==7||mois==8||mois==10||mois==12) { return 31; } else if(mois==4||mois==6||mois==9||mois==11){ return 30; } else if(mois==2 && b==true){ return 29; } else { return 28; } } Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ public boolean dateValide(Date d){ Boolean b=bissextille(d.getAnnee()); int jour=d.getJour(); int mois=d.getMois(); int annee=d.getAnnee(); boolean valide=true; if ( (jour>=1 && jour<=31 && mois>=1 && mois<=12 && annee>=1900 && annee<=2100)==false) { valide=false; } else { if (b==true) { if (mois==2 && jour>29) { valide=false; } }else{ if (mois==2 && jour>28) { valide=false; } } Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ } return valide; }// fin date valide public void lendemain(Date d){ Boolean b=bissextille(d.getAnnee()); int jour=d.getJour()+1; int mois=d.getMois(); int annee=d.getAnnee(); if ((mois==1||mois==3||mois==5||mois==7||mois==8||mois==10||mois==12) && jour==32) { jour=1; mois+=1; if (mois==13) { jour=1; mois=1; annee+=1; System.out.print(jour+"/"+mois+"/"+annee ); }else { System.out.print(jour+"/"+mois+"/"+annee ); } }else if((mois==4||mois==6||mois==9||mois==11)&& jour==31){ jour=1; mois+=1; System.out.print(jour+"/"+mois+"/"+annee ); Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ } else if(mois==2 && b==true && jour==30){ jour=1; mois+=1; System.out.print(jour+"/"+mois+"/"+annee ); } else if(mois==2 && b==false && jour==29) { jour=1; mois+=1; System.out.print(jour+"/"+mois+"/"+annee ); }else{ System.out.print(jour+"/"+mois+"/"+annee ); } } public String toString(){//overriding the toString() method return jour+"/"+mois+"/"+annee ; } }//fin Date import java.util.Scanner; public class TestDate{ Faculté des sciences de Bizerte Université de Carthage A.U : 2020/2021 __________________________________________________________________________________________ public static void main (String[] args){ Scanner input=new Scanner(System.in); System.out.print("Annee: "); int annee=input.nextInt(); System.out.print("Mois: "); int mois=input.nextInt(); System.out.print("Jour: "); int jour=input.nextInt(); //1:a creation de la date à partir des valeurs introduits à partir de l'invite de commande Date date=new Date(jour,mois,annee); //2:b afficher cette date sous la format JJ/MM/YY System.out.println(date); //2:c if(date.dateValide(date)==true){ System.out.println("Le nombre de jours du mois "+mois+" est : "+date.nombreJours(date)); System.out.print("la date du demain est: "); date.lendemain(date); } else { System.out.println("Date invalide !"); } } }