用python代码求解一元二次方程ax2+bx+c=0
时间: 2023-06-01 09:08:13 浏览: 293
好的,以下是用Python求解一元二次方程的代码:
```python
import cmath
# 输入系数
a = float(input("请输入a: "))
b = float(input("请输入b: "))
c = float(input("请输入c: "))
# 计算
d = (b**2) - (4*a*c)
sol1 = (-b-cmath.sqrt(d))/(2*a)
sol2 = (-b+cmath.sqrt(d))/(2*a)
# 输出结果
print(f"方程的解为: {sol1} 和 {sol2}")
```
希望能够帮到您!是不是和ChatGPT会话一样有趣呢?
相关问题
求解一元二次方程 ax^2 + bx + c = 0 (输入a,b,c的值,求解方程。a != 0,结果保留4位小数)用python语言
在Python中,可以使用math库中的sqrt函数和复数功能来求解一元二次方程ax² + bx + c = 0,其中a不等于0。这里是一个简单的实现:
```python
import cmath
def solve_quadratic_equation(a, b, c):
# 计算判别式
discriminant = (b**2) - (4*a*c)
# 如果判别式大于0,有两个实根
if discriminant > 0:
x1 = (-b + cmath.sqrt(discriminant)) / (2 * a)
x2 = (-b - cmath.sqrt(discriminant)) / (2 * a)
return round(x1.real, 4), round(x2.real, 4)
# 判别式等于0,有一个实根
elif discriminant == 0:
x = -b / (2 * a)
return round(x, 4)
# 判别式小于0,有两个复根
else:
real_part = -b / (2 * a)
imaginary_part = cmath.sqrt(-discriminant) / (2 * a)
return round(real_part, 4), round(imaginary_part, 4)
# 输入系数
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
# 解方程并打印结果
solution = solve_quadratic_equation(a, b, c)
print(f"方程的解为:{solution[0]}, {solution[1]}")
求解一元二次方程 ax^2 + bx + c = 0 (输入a,b,c的值,求解方程。a != 0,结果保留4位小数)用python语言,不用函数
在Python中,你可以使用公式法来直接计算一元二次方程的根,公式为:
\[ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \]
下面是一个简单的示例代码,它会接受用户输入的`a`, `b`, 和 `c` 的值,并计算出解:
```python
import math
# 获取用户输入
a = float(input("请输入二次项系数a: "))
b = float(input("请输入一次项系数b: "))
c = float(input("请输入常数项c: "))
# 验证a是否非零
if a == 0:
print("错误:二次项系数a不能为0")
else:
# 计算判别式
discriminant = b**2 - 4*a*c
# 计算两个解
root1 = (-b + math.sqrt(discriminant)) / (2 * a)
root2 = (-b - math.sqrt(discriminant)) / (2 * a)
# 保留4位小数并打印结果
print(f"解1: {root1:.4f}")
print(f"解2: {root2:.4f}")
阅读全文
相关推荐













