mirror of
https://github.com/Sosokker/Calculator-for-Matrix-and-Algebra.git
synced 2025-12-19 05:04:06 +01:00
Add rsub radd r mul method, delete string_form attribute
This commit is contained in:
parent
1e1aa128a4
commit
2708cb8867
@ -7,11 +7,11 @@ class Polynomial:
|
|||||||
if isinstance(poly, str):
|
if isinstance(poly, str):
|
||||||
self.coeff = parse_poly(poly)
|
self.coeff = parse_poly(poly)
|
||||||
self.degree = len(parse_poly(poly)) - 1
|
self.degree = len(parse_poly(poly)) - 1
|
||||||
self.string_form = poly
|
|
||||||
elif isinstance(poly, list):
|
elif isinstance(poly, list):
|
||||||
self.coeff = poly
|
self.coeff = poly
|
||||||
self.degree = len(poly) - 1
|
self.degree = len(poly) - 1
|
||||||
self.string_form = self.to_str()
|
|
||||||
else:
|
else:
|
||||||
raise ValueError
|
raise ValueError
|
||||||
self.fracmode = fracmode
|
self.fracmode = fracmode
|
||||||
@ -37,7 +37,7 @@ class Polynomial:
|
|||||||
'2x^4+2x^3+2x^2+2x+2'
|
'2x^4+2x^3+2x^2+2x+2'
|
||||||
"""
|
"""
|
||||||
if isinstance(other, Polynomial):
|
if isinstance(other, Polynomial):
|
||||||
large_index = max([self.degree, other.degree])
|
large_index = max([len(self.coeff), len(other.coeff)])
|
||||||
temp = [0 for i in range(large_index)]
|
temp = [0 for i in range(large_index)]
|
||||||
result = Polynomial(temp)
|
result = Polynomial(temp)
|
||||||
for degree_index in range(self.degree):
|
for degree_index in range(self.degree):
|
||||||
@ -48,6 +48,9 @@ class Polynomial:
|
|||||||
result.coeff[0] += other
|
result.coeff[0] += other
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
def __radd__(self, other):
|
||||||
|
return self+other
|
||||||
|
|
||||||
def __sub__(self, other):
|
def __sub__(self, other):
|
||||||
"""
|
"""
|
||||||
>>> p1 = Polynomial([1, 1, 1, 1, 1])
|
>>> p1 = Polynomial([1, 1, 1, 1, 1])
|
||||||
@ -68,6 +71,9 @@ class Polynomial:
|
|||||||
result.coeff[0] -= other
|
result.coeff[0] -= other
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
def __rsub__(self, other):
|
||||||
|
return self-other
|
||||||
|
|
||||||
def __mul__(self, other):
|
def __mul__(self, other):
|
||||||
"""
|
"""
|
||||||
>>> p1 = Polynomial([1, 1])
|
>>> p1 = Polynomial([1, 1])
|
||||||
@ -90,6 +96,9 @@ class Polynomial:
|
|||||||
poly_result = Polynomial(result)
|
poly_result = Polynomial(result)
|
||||||
return poly_result
|
return poly_result
|
||||||
|
|
||||||
|
def __rmul__(self, other):
|
||||||
|
return self*other
|
||||||
|
|
||||||
def __pow__(self, other):
|
def __pow__(self, other):
|
||||||
"""
|
"""
|
||||||
>>> p1 = Polynomial([1, 1])
|
>>> p1 = Polynomial([1, 1])
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user