.编写程序实现一元多项式的创建以及两个一元多项式相加和相乘的操作。
时间: 2024-12-23 13:17:33 浏览: 15
在一元多项式算法中,我们通常会定义一个类,包含多项式的系数和对应的指数。下面是一个简单的Python实现示例:
```python
class Polynomial:
def __init__(self, coefficients=None):
if coefficients is None:
self.coefficients = [0]
else:
self.coefficients = coefficients
# 添加两个多项式
def add(self, other):
result = self.copy()
for i in range(max(len(self.coefficients), len(other.coefficients))):
result_coefficient = self.get_coefficient(i) + other.get_coefficient(i)
result.set_coefficient(i, result_coefficient)
return result
# 乘以一个多项式
def multiply(self, other):
result = Polynomial()
for i, coefficient1 in enumerate(self.coefficients):
for j, coefficient2 in enumerate(other.coefficients):
result_coefficient = coefficient1 * coefficient2 * (i + j)
result.add(Polynomial([result_coefficient]))
return result
# 获取指定指数的系数
def get_coefficient(self, index):
if index < 0 or index >= len(self.coefficients):
return 0
return self.coefficients[index]
# 深拷贝当前多项式
def copy(self):
return Polynomial(self.coefficients[:])
# 示例
p1 = Polynomial([1, 2, 3])
p2 = Polynomial([4, 5])
p_sum = p1.add(p2)
p_product = p1.multiply(p2)
print("p1:", p1)
print("p2:", p2)
print("p_sum:", p_sum)
print("p_product:", p_product)
```
这个例子中,`Polynomial`类有`add`和`multiply`方法用于多项式的加法和乘法操作。`get_coefficient`用于获取特定指数的系数,`copy`则提供了一个深拷贝功能。
阅读全文