// Ce programme teste la classe Achat import java.io.* ; class D5Q3 { public static void main (String[] args) throws IOException { // DÉCLARATIONS DES VARIABLES ET DICTIONNAIRE DE DONNÉES Client larry, grace; Item livre1, livre2, dvd1, dvd2, jeu; Achat achat0, achat1, achat2, achat3, achat4; boolean résultat; // AFFICHAGE DE L'INFO D'IDENTIFICATION System.out.println("Question 3: Test de la classe Achat"); System.out.println(); // MODULE DE L’ALGORITHME // Crée quelques utilisateurs et items larry = new Client("Larry O'Brien", "larry@obrien.ca", "Noël"); grace = new Client("Grace Hopper", "grace@coldmail.org", "Informatique"); livre1 = new Item(Item.LIVRE, "Da Vinci Code", 12, 3); livre2 = new Item(Item.LIVRE, "Garfield", 5, 2); dvd1 = new Item(Item.DVD, "Harry Potter III", 15, 5); dvd2 = new Item(Item.DVD, "Schindler's List", 20, 1); jeu = new Item(Item.JEU, "HALO 2", 35, 2); // Teste un achat dont le coût total est plus petit que le montant crédité Item[] items0 = {livre2}; achat0 = new Achat( larry, 1, items0 ); // Teste l'affichage et le montant crédité System.out.print(achat0); System.out.println("Montant encore crédité pour " + achat0.getNomClient() + " : " + larry.getMontantCrédité() + "$"); System.out.println( "Il reste " + livre2.getCopiesDispo() + " copies de " + livre2.getTitre() ); System.out.println(); // Teste un achat Item[] items1 = {livre1, livre2, jeu}; achat1 = new Achat( larry, 1, items1 ); System.out.println(achat1); System.out.println( "Il reste " + livre2.getCopiesDispo() + " copies de " + livre2.getTitre() ); // Teste quelques accesseurs System.out.println("Facture #" + achat1.getNumFacture() + ", coût: " + achat1.getCoûtTotal() + "$, acheté au jour: " + achat1.getDateAchat() ); System.out.println("Montant encore crédité pour " + achat1.getNomClient() + " : " + larry.getMontantCrédité() + "$"); System.out.println(); // Teste d'autres achats et itemIci Item[] items2 = {dvd1, dvd2, jeu}; achat2 = new Achat( grace, 2, items2 ); System.out.println(achat2); Item[] items3 = {dvd1, livre2}; // Note: il n'y a plus de Garfield disponible ici... achat3 = new Achat( larry, 4, items3 ); System.out.println(achat3); System.out.println( dvd1.getTitre() + " acheté dans achat0? " + achat0.itemIci(dvd1) ); System.out.println( dvd1.getTitre() + " acheté dans achat1? " + achat1.itemIci(dvd1) ); System.out.println( dvd1.getTitre() + " acheté dans achat2? " + achat2.itemIci(dvd1) ); System.out.println( dvd1.getTitre() + " acheté dans achat3? " + achat3.itemIci(dvd1) ); System.out.println(); Item[] items4 = {jeu}; achat4 = new Achat( larry, 8, items4 ); System.out.println(achat4); System.out.println("Montant crédité pour " + larry.getNom() + ": " + larry.getMontantCrédité() ); } }