# Définition d'une classe Pile à capacité bornée class Pile_capacite_bornee: def __init__(self,v=[],c=10): self.valeurs=v self.taille=len(self.valeurs) self.capacite=c def empile(self,n): if self.pile_pleine(): print("La pile est pleine") else: self.valeurs.append(n) self.taille+=1 def depile(self): if self.pile_vide(): print("La pile est vide") else: n=self.valeurs.pop() self.taille-=1 return n def pile_vide(self): return self.taille==0 def pile_pleine(self): return self.taille==self.capacite def sommet(self): return self.valeurs[-1] p=Pile_capacite_bornee([1,2,3,4],6) print("capacité de la pile :",p.capacite) print("p=",p.valeurs) print("taille :",p.taille) p.empile(5) print("p=",p.valeurs) print("taille :",p.taille) print("depile :",p.depile()) print("p=",p.valeurs) print("taille :",p.taille) print("depile :",p.depile()) print("p=",p.valeurs) print("taille :",p.taille) print("depile :",p.depile()) print("p=",p.valeurs) print("taille :",p.taille) print("depile :",p.depile()) print("p=",p.valeurs) print("taille :",p.taille) print("depile :",p.depile()) print("p=",p.valeurs) print("depile :",p.depile()) print("p=",p.valeurs) print("on empile 7") p.empile(7) print("p=",p.valeurs) print("on empile 8") p.empile(8) print("p=",p.valeurs) print("on empile 9") p.empile(9) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs) print("on empile 10") p.empile(10) print("p=",p.valeurs)