编写求解一元二次方程ax2+bx+c=0,方程的a,b,c从键盘输入python
时间: 2023-09-10 18:08:18 浏览: 135
可以使用 Python 的 input() 函数来获取用户输入的 a、b、c 的值,然后套用求解一元二次方程的公式来计算方程的解。具体代码如下:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b ** 2 - 4 * a * c
if delta < 0:
print("方程无实数解!")
elif delta == 0:
x = -b / (2 * a)
print("方程的解为:x={}".format(x))
else:
x1 = (-b + math.sqrt(delta)) / (2 * a)
x2 = (-b - math.sqrt(delta)) / (2 * a)
print("方程的解为:x1={}, x2={}".format(x1, x2))
```
用户输入完 a、b、c 的值后,程序会自动计算出方程的解,并输出到屏幕上。
相关问题
任务:求解一元二次方程 ax2+bx+c=0 的根,系数 a、b、c 的值从输入获取。(本关a,b,c都是整型)python
在Python中,你可以使用内置的数学库`cmath`或者`numpy`来求解一元二次方程。这里我们主要讲解如何使用标准库:
```python
import cmath
def solve_quadratic_equation(a, b, c):
# 计算判别式
discriminant = (b**2) - (4*a*c)
# 根据判别式的值确定解的情况
if discriminant > 0:
root1 = (-b + cmath.sqrt(discriminant)) / (2 * a)
root2 = (-b - cmath.sqrt(discriminant)) / (2 * a)
return root1, root2
elif discriminant == 0:
root = -b / (2 * a)
return root, root # 返回一个实数根,因为是重根
else: # 当判别式小于0,有两个复数根
real_part = -b / (2 * a)
imaginary_part = cmath.sqrt(-discriminant) / (2 * a)
root1 = complex(real_part, imaginary_part)
root2 = complex(real_part, -imaginary_part)
return root1, root2
# 示例
a = int(input("请输入a的值:"))
b = int(input("请输入b的值:"))
c = int(input("请输入c的值:"))
roots = solve_quadratic_equation(a, b, c)
print(f"方程 {a}x^2 + {b}x + {c} = 0 的根是:{roots}")
3. 用python求解一元二次方程ax²+bx+c=0(a≠0),方程系数由键盘输入(保留两位小数)。的代码
请看下面的代码:
```
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b**2 - 4*a*c
if delta > 0:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("方程的解为:x1=%.2f,x2=%.2f" % (x1, x2))
elif delta == 0:
x1 = x2 = -b / (2*a)
print("方程的解为:x1=x2=%.2f" % x1)
else:
print("方程无实数解!")
```
这段代码可以求解一元二次方程ax² bx c=0(a≠0)的解。在运行程序时,需要由键盘输入方程的系数a、b、c的值。如果方程有两个实数解,那么程序会显示这两个解的值。如果方程有一个实数解,程序会显示这个解的值。如果方程无实数解,程序会显示相应的提示信息。
阅读全文