4、编程序求一元二次方程+bx+c=0的解。编程要求:输入:方程的三个系数均为双精度浮点数,其值由控制台输入,输入的三个实数间以逗号间隔;输出:要求分两行输出方程的2个实根值,要求5个位宽,2位精度。
时间: 2024-10-25 17:03:42 浏览: 35
为了编写一个简单的程序来计算一元二次方程 ax^2 + bx + c = 0 的解,你可以采用Python语言,因为它的语法清晰,并且适合教学演示。这里是一个基本的示例:
```python
def quadratic_solver(a, b, c):
# 计算判别式
discriminant = (b**2) - (4 * a * c)
# 判断判别式的符号并计算根
if discriminant > 0:
root1 = (-b + discriminant ** 0.5) / (2 * a)
root2 = (-b - discriminant ** 0.5) / (2 * a)
elif discriminant == 0:
root1 = -b / (2 * a)
root2 = root1
else: # 复数根
real_part = -b / (2 * a)
imaginary_part = discriminant ** 0.5 / (2 * a)
root1 = f"{real_part:.5f}{imaginary_part:+.5fi}"
root2 = root1 # 对于复数根,它们相等
return round(root1, 2), round(root2, 2)
# 从控制台获取用户输入
a, b, c = map(float, input("请输入一元二次方程的系数(a,b,c,以逗号分隔): ").split(','))
# 计算并输出结果
root1, root2 = quadratic_solver(a, b, c)
print(f"根1: {root1:5.2f}")
print(f"根2: {root2:5.2f}")
阅读全文