利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2+ bx + c =0的根,其中a不等于0。代码怎么写
时间: 2023-12-29 18:05:45 浏览: 196
可以按照以下的代码来实现:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b * b - 4 * a * c
if delta < 0:
print("该方程无实数根")
elif delta == 0:
x = -b / (2 * a)
print("该方程有一个实数根:", x)
else:
x1 = (-b + math.sqrt(delta)) / (2 * a)
x2 = (-b - math.sqrt(delta)) / (2 * a)
print("该方程有两个实数根:", x1, x2)
```
首先,我们需要从用户那里输入方程的三个系数 a、b 和 c。然后,我们可以计算 delta 的值,用来判断方程有几个实数根。最后,我们根据公式计算出实数根,并输出结果。
相关问题
用c++求5*x**2+4*x-6=0的x值,其中x1=(-b+sqrt(b*b-4*a*c))/(2*a),x2=(-b-sqrt(b*b-4*a*c))/(2*a)
这是一个二次方程,可以使用求根公式来求解。根据给定的方程5*x**2+4*x-6=0,可以将其转化为一般形式ax^2+bx+c=0,其中a=5,b=4,c=-6。
根据求根公式,可以得到两个解x1和x2:
x1 = (-b + sqrt(b*b - 4*a*c)) / (2*a)
x2 = (-b - sqrt(b*b - 4*a*c)) / (2*a)
将a、b、c的值代入上述公式,可以计算出x1和x2的值。
计算过程如下:
1. 计算b*b - 4*a*c:
b*b - 4*a*c = 4*4 - 4*5*(-6) = 16 + 120 = 136
2. 计算sqrt(b*b - 4*a*c):
sqrt(136) ≈ 11.66
3. 计算x1和x2:
x1 = (- 11.66) / (2*5) ≈ -3.133
所以,方程5*x**2+4*x-6=0的解为x ≈ 0.733 和 x ≈ -3.133。
描述 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2+ bx + c =0的根,其中a不等于0。 输入 输入一行,包含三个浮点数a, b, c(它们之间以一个空格分开),分别表示方程ax2 + bx + c =0的系数。 输出 输出一行,表示方程的解。 若b2 = 4 * a * c,则两个实根相等,则输出形式为:x1=x2=...。 若b2 > 4 * a * c,则两个实根不等,则输出形式为:x1=...;x2 = ...,其中x1>x2。 若b2 < 4 * a * c,则有两个虚根,则输出:x1=实部+虚部i; x2=实部-虚部i,即x1的虚部系数大于等于x2的虚部系数,实部为0时不可省略。实部 = -b / (2*a), 虚部 = sqrt(4*a*c-b*b) / (2*a) 所有实数部分要求精确到小数点后5位,数字、符号之间没有空格。
我可以回答这个问题。利用公式x1 = (-b sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2 bx c =的根,其中a不等于。
输入一行,包含三个浮点数a, b, c(它们之间以一个空格分开),分别表示方程ax2 bx c =的系数。
输出一行,表示方程的解。 若b2 = 4 * a * c,则两个实根相等,则输出形式为:x1=x2=...。 若b2 > 4 * a * c,则两个实根不等,则输出形式为:x1=...;x2 = ...,其中x1>x2。 若b2 < 4 * a * c,则有两个虚根,则输出:x1=实部 虚部i; x2=实部-虚部i,即x1的虚部系数大于等于x2的虚部系数,实部为时不可省略。实部 = -b / (2*a), 虚部 = sqrt(4*a*c-b*b) / (2*a)。所有实数部分要求精确到小数点后5位,数字、符号之间没有空格。
阅读全文
相关推荐











