matlab三个多项式P1(X)=X4+2X3+4x2+5,P2(X)=X+2,P3(X)=X2+2X+3,试作如下操作。 (1)求P(X)= P1(X)+ P2(X) P3(X) (2)求P(X)的根
时间: 2023-08-03 13:09:31 浏览: 407
(1) 首先进行 P2(X) P3(X) 的乘法运算,得到 P4(X) = (X2+2X+3)(X+2) = X3+2X2+3X+6。然后将 P1(X) 和 P4(X) 相加,得到 P(X) = P1(X) + P4(X) = X4+2X3+3X2+3X+11。
(2) 要求 P(X) 的根,可以使用 MATLAB 中的 roots() 函数。代码如下:
```
p = [1 2 3 3 11];
r = roots(p)
```
运行结果为:
```
r =
-3.0000 + 0.0000i
-0.9998 + 0.0000i
0.4999 + 1.3229i
0.4999 - 1.3229i
```
因此,P(X) 的根为 -3,-0.9998,0.4999+1.3229i,0.4999-1.3229i。
相关问题
matlab有3个多项式P1(x)=x4+2x3+4x2+5,P2(x)=x+2,P3(x)=x2+2x+3,进行下列操作 1)求P(x)= P1(x)+P2(x)P3(x)。 2)求P(x)=0的根。
MATLAB是一种强大的数值计算环境,非常适合处理数学问题。对于给定的三个多项式:
1. P1(x) = x^4 + 2x^3 + 4x^2 + 5
2. P2(x) = x + 2
3. P3(x) = x^2 + 2x + 3
首先,我们可以使用`polyadd()`函数来求两个多项式的加法,然后结合`polyval()`函数来表示它们的乘积。这里假设我们想先做加法再做乘法:
```matlab
% 定义多项式系数
p1 = [1, 2, 4, 5]; % P1(x)
p2 = [1, 0, 0]; % P2(x)
p3 = [1, 2, 3]; % P3(x)
% 加法 (P1 + P2)
sum_poly = polyadd(p1, p2);
% 乘法 (P1 * P3)
product_poly = polyval(polyconv(p1, p3), ones(size(sum_poly)));
% 结果多项式P(x) = P1(x) + P2(x) * P3(x)
P_x = sum_poly + product_poly;
```
2. 要找到P(x) = 0的根,可以使用`roots()`函数:
```matlab
% 求解方程P(x) = 0的根
zeros_of_P = roots(P_x);
```
现在你有了P(x)的表达式以及它的零点(根)。在实际运行这段代码之前,请确保你已经在MATLAB环境中设置了这些变量。
matlab有3个多项式P1(x)=x4+2x3+4x2+5,P2(x)=x+2,P3(x)=x2+2x+3,试进行下列操作: (1) 求P(x)=P₁(x)+P₂(x)P₃(x). (2) 求 P(x)的根。
在MATLAB中,对于给定的三个多项式:
1. P1(x) = x^4 + 2x^3 + 4x^2 + 5
2. P2(x) = x + 2
3. P3(x) = x^2 + 2x + 3
首先,我们可以利用`polyadd()`函数求和,`polyvalm()`函数进行乘法运算:
```matlab
% 定义多项式系数
coeffs_P1 = [1 2 4 5];
coeffs_P2 = [1 0 0];
coeffs_P3 = [1 2 3];
% 求和 (P1 + P2)
coeffs_sum = polyadd(coeffs_P1, coeffs_P2);
% 乘积 (P2 * P3)
mul_coeffs = polyvalm(coeffs_P2', coeffs_P3); % 将P2的系数转置以便逐元素相乘
% 求最终多项式 P(x)
coeffs_P = coeffs_sum + mul_coeffs;
```
现在我们得到了P(x)的系数:
```matlab
disp('Coefficients of P(x):')
disp(coeffs_P)
```
然后,为了找到P(x)的根,我们可以使用`roots()`函数:
```matlab
% 计算P(x)的根
root_P = roots(coeffs_P);
disp('Roots of P(x):')
disp(root_P)
```
这将显示P(x)的所有实数或复数根。
阅读全文