def copier_pile(p): pil=pile.creer_pile() copie=deepcopy(p) while pile.taille(copie)>0: a=pile.depiler(copie) pile.empiler(a,pil) while pile.taille(pil)>0: b=pile.depiler(pil) pile.empiler(b,pil) pile.afficher_pile(p) pile.afficher_pile(pil)
def inverser_pile(p): pil=pile.creer_pile() a=pile.creer_pile() a=deepcopy(p) while pile.taille(a)>0: b=pile.depiler(a) pile.empiler(b,pil)
def b2d(s): p=pile.creer_pile() s=0 for i in range (pile.taille(p)): pile.inverser_pile(p) s=p[i]*2**i return s
def troisieme_element(p): if pile.taille(p)>=3: a=pile.depiler(p) b=pile.depiler(p) c=pile.depiler(p) pile.empiler(b,p) pile.empiler(a,p) return c
def intervertion(p): if pile.taille(p)>=2: a=pile.depiler(p) b=pile.depiler(p) pile.empiler(a,p) pile.empiler(b,p)