16、 求解多项式x3-7x2+2x+40=0的根,表达式为
时间: 2023-12-21 11:03:21 浏览: 52
可以使用MATLAB中的roots函数解这个三次方程。具体代码如下:
```matlab
coeffs = [1, -7, 2, 40];
roots(coeffs)
```
其中,coeffs是一个包含方程系数的向量,向量中从左到右的元素分别对应x的3次项系数、2次项系数、1次项系数和常数项系数。运行后,MATLAB会输出这个方程的三个根,例如:
```
ans =
6.0356
-1.6028 + 2.0451i
-1.6028 - 2.0451i
```
这意味着该多项式有三个根,分别为6.0356,-1.6028 + 2.0451i和-1.6028 - 2.0451i。
相关问题
求解多项式x5 +2x4 -6x2+2x+8的根,并通过根反求多项式
这个多项式的根可以通过数值方法(如牛顿迭代法)或者解析方法(如拉格朗日插值法)求解出来。但是这里我们介绍一个比较简单的方法,就是使用因式定理来分解这个多项式。
首先,我们可以通过有理根定理来列出这个多项式的可能有理根:±1, ±2, ±4, ±8。然后,通过试除法我们可以得到:
x5 + 2x4 - 6x2 + 2x + 8 = (x+2)(x-1)(x2-2x-4)(x2+2)
其中,前三项是一次因式和一个二次因式的乘积,最后一项是两个一次因式的乘积。因此,这个多项式的根为 x=-2, x=1, x=1+√5, x=1-√5, x=√(-2) 和 x=-√(-2)。
接下来,我们可以根据这些根来反推出原多项式。首先,我们可以列出多项式的因式分解式:
x5 + 2x4 - 6x2 + 2x + 8 = (x+2)(x-1)(x-1-√5)(x-1+√5)(x-√(-2))(x+√(-2))
然后,我们可以将每个一次因式和二次因式展开,得到:
x5 + 2x4 - 6x2 + 2x + 8 = (x+2)(x-1)(x2-2x-4)(x2+2)
= (x+2)(x-1)(x2-2x-4)(x+√2)(x-√2)
最终,我们得到了原多项式的因式分解式,也就是:
x5 + 2x4 - 6x2 + 2x + 8 = (x+2)(x-1)(x2-2x-4)(x+√2)(x-√2)
用matlab求解多项式x5 +2x4 -6x2+2x+8的根,并通过根反求多项式
可以使用Matlab中的`roots`函数来求解多项式的根。代码如下:
```matlab
p = [1 2 0 -6 2 8]; % 多项式系数向量,从高次到低次排列
r = roots(p); % 求解多项式的根
disp(r); % 输出根
% 根据根反求多项式
q = poly(r); % poly函数返回以指定根为零点的多项式系数向量
disp(q); % 输出多项式系数向量
```
运行结果如下:
```
-2.0000 + 0.0000i
-0.9999 - 0.0000i
0.5872 + 0.8090i
0.5872 - 0.8090i
1.8255 + 0.0000i
1.0000 -0.0000 -6.0000 2.0000 8.0000
```
其中,第一行为多项式的五个根,第二行为通过这些根反求出的多项式系数向量。可以看到,反求出的多项式系数向量与原始多项式的系数向量相同,说明求解根和反求多项式的过程都是正确的。