màj pour version initialeV2

This commit is contained in:
2025-09-24 10:44:11 +02:00
parent 4189d05e82
commit 41d36548d2
5 changed files with 105 additions and 3 deletions

View File

@@ -0,0 +1,32 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.mycompany.bibliotheque;
import java.util.Scanner;
/**
*1
* @author dthev
*/
public class Bibliotheque {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Livre l1 = new Livre("Le secret des secrets","Dan Brown","9782709668385",false);
Utilisateur u1 = new Utilisateur("Alice");
System.out.println("Bienvenue dans la bibliothèque !");
System.out.println("1. Afficher un livre");
System.out.println("2. Emprunter un livre");
System.out.println("Votre choix : ");
int choix = sc.nextInt();
if (choix == 1) {
System.out.println("Livre : " + l1.getTitre());
} else if (choix == 2) {
boolean ok = Emprunt.effectuerEmprunt(u1, l1);
System.out.println(ok ? "Emprunt réussi !" : "Échec de l'emprunt.");
}
}
}

View File

@@ -0,0 +1,23 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.mycompany.bibliotheque;
/**
*
* @author dthev
*/
public class Emprunt {
// TODO: logique métier d'emprunt
public static boolean effectuerEmprunt(Utilisateur u, Livre l) {
if (l.isEmprunte()) {
return false; // déjà emprunté
}
if (u.getEmprunts().size() >= 3) {
return false; // trop de livres empruntés
}
l.setEmprunte(true);
return u.emprunterLivre(l);
}
}

View File

@@ -13,13 +13,16 @@ public class Livre {
private String titre;
private String auteur;
private String isbn; // ISBN sous forme de chaîne
private Boolean emprunte;
public Livre(String titre, String auteur, String isbn) {
public Livre(String titre, String auteur, String isbn, Boolean emprunte) {
this.titre = titre;
this.auteur = auteur;
this.isbn = isbn;
this.emprunte = emprunte;
}
//getters et setters
public String getTitre() {
return titre;
}
@@ -44,6 +47,15 @@ public class Livre {
this.isbn = isbn;
}
public boolean isEmprunte() {
return emprunte;
}
public void setEmprunte(boolean emprunte) {
this.emprunte = emprunte;
}
}

View File

@@ -0,0 +1,35 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.mycompany.bibliotheque;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author dthev
*/
public class Utilisateur {
private String nom;
private List<Livre> emprunts;
public Utilisateur(String nom) {
this.nom = nom;
this.emprunts = new ArrayList<>();
}
public String getNom() {
return nom;
}
public List<Livre> getEmprunts() {
return emprunts;
}
// TODO: ajouter un emprunt si l'utilisateur a moins de 3 livres
public boolean emprunterLivre(Livre livre) {
return false; // à compléter
}
}