Vous êtes sur la page 1sur 3

Correction de l’exercice bibliotheque

class document:
compteur=0
def __init__(self):
pass
def __init__(self,reference="",titre="",auteur="",nbpage=""):
self.__reference=reference
self.__titre=titre
self.__auteur=auteur
self.__nbpage=nbpage
document.compteur+=1
@property
def reference(self):
return self.__reference
@property
def titre(self):
return self.__titre
@property
def auteur(self):
return self.__auteur
@property
def nbpage(self):
return self.__nbpage
@reference.setter
def reference(self,a):
self.__reference=a
@titre.setter
def titre(self,a):
self.titre=a
@auteur.setter
def auteur(self,a):
self.__auteur=a
@nbpage.setter
def nbpage(self,a):
nb__page=a
def tostring(self):
print("reference est:"+self.reference +"\t titre est :"+self.titre + "\t auteur
est:"+self.auteur +"\t nombre de page :"+str(self.nbpage))
def aqual(self,a):
if a.reference==self.reference :
print("les document sont eguaux")
else : print("les document ne sont pas eguaux")
def calc(self):
print("le cout de document est :",self.nbpage*2.3,"dh")
class roman(document):
def __init__(self,reference="",titre="",auteur="",nbpage="",editeur="",anneepb=""):
super().__init__(reference="",titre="",auteur="",nbpage="")
self.editeur=editeur
self.anneepb=anneepb
def tostring(self):
print(document.tostring(self),"\t editeur est :",self.editeur ,"\t anneepb est
",self.anneepb)
class revue(document):
def __init__(self,reference="",titre="",auteur="",nbpage="",mois="",annee=""):
document.__init__(self,reference,titre,auteur,nbpage)
self.mois=mois
self.annee=annee
def tostring(self):
print( document.tostring(self),"\t mois:"+self.mois , "\t annee :"+self.annee )

class biblioteheque:

def __init__(self,nom,adresse,liste):
liste=[]
self.nom=nom
self.adresse=adresse
self.liste=liste
def tostring(self):
print(self.nom+"\t"+self.adresse)
self.afficherlist()
def ajouterdoc(self):
print("menu")
print("1-roman 2-revue ")
x=int(input("entrer le type de document:"))
if x==1 :
m=int(input("entrer le nombre de document"))
for i in range(m):
reference=input("entrer une reference:")
titre=input("entrer titre:")
auteur=input("entrer l'auteur:")
nbpage=input("entrer le nombre de page")
editeur=input("entrer l'editeur")
anneepb=input("entrer l'annee")
r=roman(reference,titre,auteur,nbpage,editeur,anneepb)
self.liste.append(r)
if x==2 :
n=int(input("entrer le nombre de document"))
for i in range(n):
reference=input("entrer une reference:")
titre=input("entrer titre:")
auteur=input("entrer l'auteur:")
nbpage=input("entrer le nombre de page")
mois=input("entrer le mois")
annee=input("entrer l'annee")
b=revue(reference,titre,auteur,nbpage,mois,annee)
self.liste.append(b)
def afficherlist(self):
for a in self.liste :
a.tostring()
def recherche(self):
x=input("entrer la reference de document à chercher:")
for a in self.liste:
if x==a.reference:
a.tostring()
def listrom(self):
for a in self.liste:
if a.anneepb !="":
a.tostring()

def supprimer(self):
x=input("entrer la reference de document à supprimer")
n=len(self.liste)
for i in range(n) :
if x==self.liste[i].reference:
del self.liste[i]
print("le document a ete supprimer")
def enregistrer(self):
f=open("bibliotheque.txt","w")
for a in self.liste:
f.write(a.reference+a.titre+a.auteur+a.nbpage)
f.close()
print("l'enregisterement a ete bien effectuer")

b1=biblioteheque("22","255","")
b2=biblioteheque("77","999","")
b1.ajouterdoc()
b2.ajouterdoc()
b1.tostring()
b2.tostring()
print("le nombre de document est :",document.compteur)
d1=biblioteheque("aa","zz",[])
d1.ajouterdoc()
d1.listrom()

Vous aimerez peut-être aussi