输出一元二次方程的根
时间: 2024-06-13 22:07:58 浏览: 13
以下是输出一元二次方程的根的Python代码,其中a、b、c分别为一元二次方程的系数:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
if a == 0:
print("该方程的根不是一元二次方程")
else:
disc = b * b - 4 * a * c
if disc > 0:
p = -b / (2 * a)
q = math.sqrt(disc) / (2 * a)
print("该方程有两个不相等的实数根:%.2f和%.2f" % (p + q, p - q))
elif disc == 0:
p = -b / (2 * a)
print("该方程有两个相等的实数根:%.2f" % p)
else:
p = -b / (2 * a)
q = math.sqrt(abs(disc)) / (2 * a)
print("该方程有两个共轭复数根:%.2f+%.2fi和%.2f-%.2fi" % (p, q, p, q))
```
相关问题
用c语言输出一元二次方程的根
以下是用 C 语言输出一元二次方程的根的代码:
```
#include <stdio.h>
#include <math.h>
int main() {
float a, b, c, delta, x1, x2;
printf("请输入一元二次方程的系数:\n");
scanf("%f%f%f", &a, &b, &c);
delta = b * b - 4 * a * c;
if (delta < 0) {
printf("该方程无实数解!\n");
} else if (delta == 0) {
x1 = x2 = -b / (2 * a);
printf("该方程有唯一解,x1 = x2 = %.2f\n", x1);
} else {
x1 = (-b + sqrt(delta)) / (2 * a);
x2 = (-b - sqrt(delta)) / (2 * a);
printf("该方程有两个实数解,x1 = %.2f, x2 = %.2f\n", x1, x2);
}
return 0;
}
```
这个程序可以让用户输入一元二次方程的系数,然后计算出方程的根并输出。如果方程无实数解,则输出提示信息。
一元二次方程根的判定表
下面是一元二次方程根的判定表:
```
1. 计算判别式:判别式 (D) = b^2 - 4ac
2. 判别式的值 D:
a. 如果 D > 0,则方程有两个不相等的实根。
b. 如果 D = 0,则方程有两个相等的实根。
c. 如果 D < 0,则方程没有实根,而是有两个共轭复根。
3. 根的计算:
a. 当 D > 0 时,实根计算公式:x1 = (-b + √D) / (2a),x2 = (-b - √D) / (2a)
b. 当 D = 0 时,实根计算公式:x1 = x2 = -b / (2a)
c. 当 D < 0 时,复根计算公式:x1 = (-b + √(-D)i) / (2a),x2 = (-b - √(-D)i) / (2a),其中 i 是虚数单位
4. 输出结果:
a. 当方程有两个不相等的实根时,输出 x1 和 x2 的值。
b. 当方程有两个相等的实根时,输出 x1 和 x2 的值。
c. 当方程没有实根而是有两个共轭复根时,输出 x1 和 x2 的值。
5. 结束
```
这个判定表可以帮助我们根据一元二次方程的系数,判断方程有几个根以及根的类型(实根或复根),并计算出根的值。根据判别式的值,我们可以确定方程的根的情况,并使用相应的计算公式得到根的值。最后,我们根据计算结果输出相应的根。