2.求 方程的根。a、b、c由键盘输入。 设>0。公式: 代码
时间: 2024-10-12 20:04:51 浏览: 37
要编写一个程序来求解一元二次方程 ax^2 + bx + c = 0 的根,我们通常会使用公式法,也称为韦达定理(Vieta's formulas),其中 x 的两个根可以表示为:
\[ x_1 = \frac{-b - \sqrt{b^2 - 4ac}}{2a} \]
\[ x_2 = \frac{-b + \sqrt{b^2 - 4ac}}{2a} \]
这个算法需要确保判别式 b^2 - 4ac 大于等于0,因为如果判别式小于0,那么方程将没有实数根,只有复数根。
以下是基于 Python 编写的简单示例代码,假设用户输入 a、b 和 c 的值:
```python
import math
def quadratic_solver(a, b, c):
# 计算判别式
discriminant = b**2 - 4*a*c
if discriminant >= 0:
# 实数根计算
root1 = (-b + math.sqrt(discriminant)) / (2 * a)
root2 = (-b - math.sqrt(discriminant)) / (2 * a)
print(f"方程的两个实根分别为: {root1:.2f}, {root2:.2f}")
else:
print("方程无实数根,有共轭复数根.")
# 用户输入系数
a = float(input("请输入a的值: "))
b = float(input("请输入b的值: "))
c = float(input("请输入c的值: "))
quadratic_solver(a, b, c)
```
在这个代码里,用户会被提示输入三个系数,然后程序会计算并打印出根,如果判别式为负,则说明方程无实根。
阅读全文