0% ont trouvé ce document utile (0 vote)
40 vues4 pages

Gestion de location de voitures en PHP

Le document décrit une classe Voiture, une classe Client et une classe Agence pour gérer une agence de location de voitures. Il présente des questions pour compléter les classes avec leurs attributs et méthodes.

Transféré par

dhia djobbi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
40 vues4 pages

Gestion de location de voitures en PHP

Le document décrit une classe Voiture, une classe Client et une classe Agence pour gérer une agence de location de voitures. Il présente des questions pour compléter les classes avec leurs attributs et méthodes.

Transféré par

dhia djobbi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Ecole Supérieure Privée d’Ingénierie et de Technologie

Matière : Programmation orientée objet et langage Java

Enseignants : Sofien Gharbi Saif Braham Rojdi Rekik


Mehdi Hendili Bessem Hmidi Ibtihel Shimi

Documents : Non autorisés Session : Principale Date : 06/02/2009 Durée : 1h30

Examen
Nous souhaitons réaliser une solution de gestion d’une agence de location de Voitures. Les classes
principales de ce programme sont : la classe Voiture, la classe Client et la classe Agence.

Une voiture est caractérisée par son immatriculation, sa marque et son prix. Deux voitures sont
égales s’ils ont la même immatriculation et la même [Link] souhaitons réaliser une
solution de gestion d’une agence de location de Voitures. Les classes principales de ce programme
Q1. Compléter la classe Voiture ?
sont : la classe Voiture, la classe Client et la classe Agence.
Un client est caractérisé par un code, un nom et un prénom. Deux clients sont égaux s’ils ont le même
Une voiture est caractérisée par son immatriculation, sa marque et son prix. Deux voitures
code.
sont égales s’ils ont la même immatriculation et la même [Link] souhaitons réaliser
une solution delagestion
Q2. Compléter classe d’une
Client agence
? de location de Voitures. Les classes principales de ce
programme sont : la classe Voiture, la classe Client et la classe Agence.
Cette agence a mis à la disposition de ces clients la possibilité de louer plusieurs voitures, pour cela
on a créé
Une uneest
voiture classe ListVoitures
caractérisée quison
par permet de stocker unsa
immatriculation, ensemble
marquede et voiture dans
son prix. unevoitures
Deux liste. Cette
classeégales
sont permets’ils
d’ajouter, de supprimer
ont la même une voitureetetlad’afficher
immatriculation la liste des voitures.
même [Link] souhaitons réaliser
une solution de gestion d’une agence de location de Voitures. Les classes principales de ce
Q3. Compléter la classe ListVoitures ?
programme sont : la classe Voiture, la classe Client et la classe Agence.
Cette agence offre à ces clients la possibilité de choisir les voitures à louer en fonction de différents
Une voiture
critères. Il estest caractérisée
possible par sondans
de sélectionner immatriculation, sa marque
la liste des voitures à louerettoutes
son prix. Deux voitures
les voitures
sont égalesuns’ils
satisfaisant ont la
critère même
donné. Onimmatriculation
définit l’interfaceetCritère
la mê[Link]
: souhaitons réaliser
une solution de gestion d’une agence de location de Voitures. Les classes principales de ce
programmepublic interface
sont Critere
: la classe {
Voiture, la classe Client et la classe Agence.

Une voiture estboolean estSatisfaitPar(Voiture


caractérisée v);
par son immatriculation, sa marque et son prix. Deux voitures
}
sont égales s’ils ont la même immatriculation et la même [Link] souhaitons réaliser
une solution de gestion d’une agence de location de Voitures. Les classes principales de ce
programme sont
Q4. Compléter la :classe
la classe Voiture, la classe
CritereMarque Client
(Choix selonetlalamarque)
classe Agence.
?

Q5. Compléter
Une voiture estla caractérisée
classe CriterePrix (Choix
par son selon le prix) ? sa marque et son prix. Deux voitures
immatriculation,
sont égales s’ils ont la même immatriculation et la même [Link] souhaitons réaliser
Une agence est caractérisée par un nom, un parking de type ListVoiture qui permet d'enregistrer les
une solution de gestion d’une agence de location de Voitures. Les classes principales de ce
voitures de l'agence de location et un ClientVoitureLoue de type Map (la partie clé est Client, la
programme sont : la classe Voiture, la classe Client et la classe Agence.
partie valeur est ListVoitures) qui permet d'enregistrer pour chaque client la liste des voitures
actuellement
Une louées.
voiture est caractérisée par son immatriculation, sa marque et son prix. Deux voitures
sont égales s’ils
Les fonctions ont lapour
standard même immatriculation
la gestion de locationetdelavoiture
mêmesont
marque.
:

1
- louer une voiture à un client.
- retourner une voiture louée par un client,
- retourner la liste des voitures selon un critère défini
- retourner l’ensemble des clients qui ont loué une (des) voiture(s)
- retourner la liste des voitures actuellement en état de location
- afficher les clients et leurs voitures louées.

Q6. Compléter la classe Agence ?

Q7. Compléter la méthode qui effectue le tri selon le code du client ?

Q8. Compléter la méthode qui effectue le tri selon le nom du client ?

Remarque :

- Vous avez, en annexe, quelques codes incomplets pouvant vous guidé à implémenter les
classes. S’il y a d’autres classes à développer n’hésitez pas à les écrire.

2
public class Voiture { public class Client {
private int immariculation; private int code;
private String marque; private String nom;
private float prixLocation; private String prenom;
public Voiture(int immariculation, String marque, public Client(int code, String nom, String
float prixLocation) { prenom) {
// à compléter //à complèter
} }
public int getImmariculation() {
return immariculation; public int getCode() {
} return code;
public void setImmariculation(int immariculation) { }
[Link] = immariculation; public void setCode(int code) {
} [Link] = code;
public String getMarque() { }
return marque; public String getNom() {
} return nom;
public void setMarque(String marque) { }
[Link] = marque; public void setNom(String nom) {
} [Link] = nom;
public float getPrixLocation() { }
return prixLocation; public String getPrenom() {
} return prenom;
public void setPrixLocation(float prixLocation) { }
[Link] = prixLocation; public void setPrenom(String prenom) {
} [Link] = prenom;
public int hashCode() { }
//à completer public int hashCode() {
} //à completer
public boolean equals(Object obj) { }
//à completer public boolean equals(Object obj) {
} //à completer
public String toString(){ }
//à completer public String toString(){
} //à completer
} }}

public class CritereMarque implements Critere { public class CriterePrix implements Critere {
private String marque; private float prix;
public CritereMarque(String marque) { public CriterePrix(float prix) {
[Link] = marque; [Link] = prix;
} }
public boolean estSatisfaitPar(Voiture v) { public boolean estSatisfaitPar(Voiture v) {
// à compléter //à Compléter
} }
} }

3
public class ListVoitures { public class Agence {
private List<Voiture> voitures; private String nom;
public ListVoitures(List<Voiture> voitures) { private ListVoitures vs;
//à compléter private Map<Client, ListVoitures> ClientVoitureLoue;
} public Agence(String nom) {
public ListVoitures() { //à completer
//à compléter }
} public void ajoutVoiture(Voiture v) throws
public List<Voiture> getVoitures() { VoitureException{
//à compléter // à completer
} }
public void setVoitures(List<Voiture> voitures) { public void suppVoiture(Voiture v)throws
//à compléter VoitureException{
} //à completer
}
public void ajoutVoiture(Voiture v) throws
VoitureException{ public void loueClientVoiture(Client cl, Voiture
v)throws VoitureException{
//à compléter // à completer
} }
public void supprimeVoiture(Voiture v) throws
VoitureException{ public void retourClientVoiture(Client cl , Voiture v)
// à compléter throws VoitureException{
} // à completer
public Iterator<Voiture> iterateur(){ }
return [Link]();
} public List<Voiture> selectVoitureSelonCritere(Critere
public int size(){ c){
return [Link](); //à completer
} }
public void affiche(){ public Set<Client> ensembleClientsLoueurs(){
// à completer // à completer
} }
public Collection<ListVoitures>
} collectionVoituresLouees(){
// à completer
}
public void afficheLesClientsEtLeursListesVoitures(){
//à compléter
}
public Map<Client, ListVoitures> triCodeCroissant(){
// à completer
}
public Map<Client, ListVoitures> triNomCroissant(){
// à completer
}
}

Vous aimerez peut-être aussi