PYTHON 21
Fraction.py Guest on 9th October 2020 05:54:34 PM
  1.  
  2. def pgcd(a,b):
  3.     """pgcd(a,b): calcul du 'Plus Grand Commun Diviseur' entre les 2 nombres entiers a et b"""
  4.     while b!=0:
  5.         a,b=b,a%b
  6.     return a
  7. class Fraction:
  8.     def __init__(self,numerateur,denominateur):
  9.         self.numerateur=numerateur
  10.         self.denominateur=denominateur
  11.  
  12.     def simplifier(self):
  13.         d = pgcd(self.numerateur,self.denominateur)
  14.         self.numerateur = int(self.numerateur/d)
  15.         self.denominateur =int( self.denominateur/d)
  16.  
  17.     def meme_denominateur(self, terme):
  18.         self.numerateur *= terme.denominateur
  19.         denominateur1 = self.denominateur
  20.         self.denominateur *= terme.denominateur
  21.         terme.numerateur *= denominateur1
  22.         terme.denominateur *= denominateur1
  23.  
  24.  
  25.     def additionner(self, terme):
  26.         self.meme_denominateur(terme)
  27.         numerateur = self.numerateur + terme.numerateur
  28.         denominateur = self.denominateur
  29.         resultat = Fraction(numerateur, denominateur)
  30.         resultat.simplifier()
  31.         return resultat
  32.  
  33.     def soustraction(self, terme):
  34.         self.meme_denominateur(terme)
  35.         numerateur = self.numerateur - terme.numerateur
  36.         denominateur = self.denominateur
  37.         resultat = Fraction(numerateur, denominateur)
  38.         resultat.simplifier()
  39.         return resultat
  40.  
  41.     def multiplication(self, terme):
  42.         numerateur= self.numerateur * terme.numerateur
  43.         denominateur = self.denominateur * terme.denominateur
  44.         resultat = Fraction(numerateur, denominateur)
  45.         resultat.simplifier()
  46.         return resultat
  47.  
  48.     def division(self,terme):
  49.         terme = Fraction(terme.denominateur, terme.numerateur)
  50.         resultat = self.multiplication(terme)
  51.         resultat.simplifier()
  52.         return resultat

Paste is for source code and general debugging text.

Login or Register to edit, delete and keep track of your pastes and more.

Raw Paste

Login or Register to edit or fork this paste. It's free.