Skip to content
Extraits de code Groupes Projets
Valider 4c1fcce2 rédigé par fbury's avatar fbury
Parcourir les fichiers

Ajout de subtraction dans la classe complexe

parent e4f43bdf
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -16,6 +16,9 @@ class complexe: ...@@ -16,6 +16,9 @@ class complexe:
else: else:
return "{}{}i".format(self.real,self.imag) return "{}{}i".format(self.real,self.imag)
def __neg__(self):
return complexe(-self.real,-self.imag)
def __add__(self,other): def __add__(self,other):
if isinstance(other,complexe): if isinstance(other,complexe):
return complexe(self.real + other.real, self.imag+other.imag) return complexe(self.real + other.real, self.imag+other.imag)
...@@ -28,6 +31,18 @@ class complexe: ...@@ -28,6 +31,18 @@ class complexe:
def __radd__(self,other): def __radd__(self,other):
return self + other return self + other
def __sub__(self,other):
if isinstance(other,complexe):
return complexe(self.real - other.real, self.imag-other.imag)
else:
try:
return complexe(self.real-other, self.imag)
except:
return NotImplemented
def __rsub__(self,other):
return - self + other
def __mul__(self,other): def __mul__(self,other):
if isinstance(other,complexe): if isinstance(other,complexe):
return complexe(self.real*other.real - self.imag * other.imag, return complexe(self.real*other.real - self.imag * other.imag,
...@@ -97,6 +112,5 @@ class complexe: ...@@ -97,6 +112,5 @@ class complexe:
else: else:
return (abs(self),math.atan(self.imag/self.real)) return (abs(self),math.atan(self.imag/self.real))
if __name__ == "__main__": if __name__ == "__main__":
print("For explanation on all the 'NotImplemented in the code, please check-out not_implemented_expl.py") print("For explanation on all the 'NotImplemented in the code, please check-out not_implemented_expl.py")
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter