求根公式一元二次方程matlab
时间: 2024-09-08 16:00:59 浏览: 45
一元二次方程通常指的是形如 ax^2 + bx + c = 0 的方程,其中 a、b 和 c 是常数,且 a ≠ 0。求解一元二次方程的根可以使用求根公式,也称为二次公式。该公式可以直接给出方程的根,公式如下:
x = (-b ± √(b^2 - 4ac)) / (2a)
在 MATLAB 中,你可以使用内置函数 `roots` 来求解一元二次方程的根,也可以直接应用上述的求根公式。下面是使用求根公式在 MATLAB 中解一元二次方程的代码示例:
```matlab
% 假设一元二次方程的系数为 a = 1, b = -3, c = 2
a = 1;
b = -3;
c = 2;
% 计算判别式
discriminant = b^2 - 4*a*c;
% 根据判别式的值来计算根
if discriminant > 0
% 两个不同的实数根
root1 = (-b + sqrt(discriminant)) / (2*a);
root2 = (-b - sqrt(discriminant)) / (2*a);
elseif discriminant == 0
% 两个相同的实数根(重根)
root1 = root2 = -b / (2*a);
else
% 两个复数根
realPart = -b / (2*a);
imaginaryPart = sqrt(-discriminant) / (2*a);
root1 = complex(realPart, imaginaryPart);
root2 = complex(realPart, -imaginaryPart);
end
% 显示结果
fprintf('方程 %dx^2 + %dx + %d = 0 的根为:\n', a, b, c);
fprintf('x1 = %f\n', root1);
fprintf('x2 = %f\n', root2);
```
请注意,上述代码中 `sqrt` 函数用于计算平方根,`complex` 函数用于创建复数。
阅读全文