Semaine 4, jour 4, soir

This commit is contained in:
gauvainboiche
2026-01-15 16:52:26 +01:00
parent 4c9c3b29e8
commit 54bb4d7628
17 changed files with 620 additions and 24 deletions

View File

@@ -8,6 +8,21 @@ class Fraction:
def __init__(self, numerator, denominator):
self.numerator = numerator
self.denominator = denominator
self.simplifier()
def __mul__(self, factor: int | Self):
if isinstance(factor, int):
return Fraction(
numerator = self.numerator * factor,
denominator = self.denominator
)
return Fraction(
numerator = self.numerator * factor.numerator,
denominator = self.denominator * factor.denominator
)
def __rmul__(self, number: int):
return self.__mul__(number)
def quotient(self):
"""[Fraction] Chiffre sur Chiffre"""
@@ -19,15 +34,26 @@ class Fraction:
den = self.denominator * fraction.denominator
return Fraction(numerator= num, denominator= den)
@staticmethod
def pgcd( a, b):
"""Calcul du PGCD de deux entiers naturels"""
if b == 0:return a
return Fraction.pgcd(a= b, b= a % b)
def simplifier(self):
a = self.numerator
b = self.denominator
pgcd = Fraction.pgcd(a, b)
self.numerator = self.numerator // pgcd # // force la division à ne PAS donner de float
self.denominator //= pgcd # C'est la même chose que dessus
def __repr__(self):
return f"Fraction({self.numerator}/{self.denominator})"
tiers = Fraction(numerator= 1, denominator= 3)
quart = Fraction(1, 4)
# print(tiers.__dict__)
# print(quart.__dict__)
# print(Fraction.__dict__)
fraction = tiers.plus(quart)
print(fraction)
print(fraction)