编写程序,输入a b c,求一元二次方程ax²+bx+c的根
时间: 2023-05-21 11:03:15 浏览: 204
可以使用以下代码来解决这个问题:
```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 =", x)
else:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("该方程有两个实数根:x1 =", x1, "x2 =", x2)
```
这个程序可以根据用户输入的a、b、c的值,计算出一元二次方程的根。如果方程无实数根,则输出提示信息。如果方程有一个实数根,则输出该根的值。如果方程有两个实数根,则输出这两个根的值。
相关问题
编写c语言程序,求一元二次方程ax²+bx+c=0的根
```c
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c, delta, x1, x2;
printf("请输入一元二次方程的三个系数:\n");
scanf("%lf%lf%lf", &a, &b, &c);
delta = b * b - 4 * a * c;
if (delta > 0) {
x1 = (-b + sqrt(delta)) / (2 * a);
x2 = (-b - sqrt(delta)) / (2 * a);
printf("方程有两个不相等的实根:x1=%.2f, x2=%.2f\n", x1, x2);
} else if (delta == 0) {
x1 = x2 = -b / (2 * a);
printf("方程有两个相等的实根:x1=x2=%.2f\n", x1);
} else {
printf("方程没有实根\n");
}
return 0;
}
```
输入一元二次方程的三个系数a.b.c,求方程ax²+bx+c的根
一元二次方程的根可以用以下公式求解:
x = (-b ± √(b² - 4ac)) / 2a
其中,a、b、c分别为方程的三个系数。根据这个公式,我们可以编写如下代码来求解:
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
# 计算判别式
delta = b**2 - 4*a*c
# 判断根的情况并计算
if delta > 0:
x1 = (-b + delta**0.5) / (2*a)
x2 = (-b - delta**0.5) / (2*a)
print("方程的两个根分别为:", x1, x2)
elif delta == 0:
x = -b / (2*a)
print("方程的唯一根为:", x)
else:
print("方程无实根")