SHARE
TWEET

Untitled

a guest Feb 19th, 2019 77 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. class Pile_Entier:
  2.     def __init__(self, taille =100):
  3.         self.taille = taille
  4.         self.pile = []
  5.  
  6.     def empiler(self, element):
  7.         assert not self.est_Pleine()
  8.         self.pile.append(element)
  9.  
  10.     def depiler(self):
  11.         assert not self.est_Vide()
  12.         return self.pile.pop()
  13.  
  14.     def sommet(self):
  15.         return self.pile[-1]
  16.  
  17.     def est_Vide(self):
  18.         return len(self.pile) == 0
  19.  
  20.     def est_Pleine(self):
  21.         return len(self.pile) == self.taille
  22.  
  23.     def purger(self):
  24.         assert not self.est_Vide()
  25.         i = taille - 1
  26.         while i > -1:
  27.             self.pile.pop()
  28.             i -= 1
  29.  
  30.     def afficher(self):
  31.         assert not self.est_Vide()
  32.         for i in self.pile:
  33.            print(i)
  34.  
  35. class Calculatrice():
  36.     def __init__(self):
  37.         self.pile = Pile_Entier()
  38.  
  39.     def npi(self,saisie):
  40.         saisie = saisie.split()
  41.         print(saisie)
  42.         op =("+-*")
  43.         for c in saisie:
  44.             if c not in op:
  45.                 self.pile.empiler(c)
  46.             else:
  47.                 a = int(self.pile.depiler())
  48.                 b = int(self.pile.depiler())
  49.                 if c == "+":
  50.                     self.pile.empiler(b+a)
  51.                 elif c == "-":
  52.                     self.pile.empiler(b - a)
  53.                 else:
  54.                     self.pile.empiler(b * a)
  55.  
  56.         return self.pile.depiler()
  57.  
  58.  
  59. c = Calculatrice()
  60. print(c.npi("2 3 + 4 - "))
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top