任意输入一个一元二次方程的系数 a , b . c 求此方程的两个根。"
时间: 2023-05-15 14:05:44 浏览: 220
可以使用公式:x = (-b ± sqrt(b^2 - 4ac)) / 2a 来求解。具体步骤如下:
1. 计算判别式 delta = b^2 - 4ac
2. 如果 delta < 0,则方程无实数根,输出"此方程无实数根"。
3. 如果 delta = 0,则方程有一个重根,输出"此方程有一个重根 x = (-b)/(2a)"。
4. 如果 delta > 0,则方程有两个不同的实数根,输出"此方程有两个不同的实数根 x1 = (-b + sqrt(delta))/(2a), x2 = (-b - sqrt(delta))/(2a)"。
例如,如果输入 a=1, b=2, c=1,则 delta = 0,方程有一个重根 x = -1。
相关问题
输入任意三个系数,求一元二次方程ax2+bx+c=0的根。a、b、c为任意实数。
一元二次方程的解可以使用二次公式来计算,即当给定方程 `ax^2 + bx + c = 0` 时,其解 x 可以表示为:
\[ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \]
这个公式称为求根公式。在C语言中,我们可以编写一个函数来接受a、b和c作为参数,并返回两个解。以下是实现该功能的一个简单例子:
```c
#include <stdio.h>
#include <math.h> // 引入math库用于计算平方根
// 函数声明,计算一元二次方程的根
void quadratic_equation(double a, double b, double c, double* roots);
int main() {
double a, b, c;
printf("请输入一元二次方程的系数a、b和c:\n");
scanf("%lf %lf %lf", &a, &b, &c);
double roots[2]; // 存储两个解
quadratic_equation(a, b, c, roots);
// 输出结果
if (roots[0] != INFINITY && roots[1] != INFINITY) { // 判断是否有效解
printf("方程的解为:%.2lf 和 %.2lf\n", roots[0], roots[1]);
} else {
printf("方程无实数解。\n");
}
return 0;
}
// 定义计算根的函数
void quadratic_equation(double a, double b, double c, double* roots) {
double discriminant = b * b - 4 * a * c;
if (discriminant >= 0) {
roots[0] = (-b + sqrt(discriminant)) / (2 * a);
roots[1] = (-b - sqrt(discriminant)) / (2 * a);
} else {
roots[0] = roots[1] = INFINITY; // 实数解不存在,设置为无穷大
}
}
```
在这个程序中,用户输入一元二次方程的系数,然后函数`quadratic_equation`计算并存储两个解。如果判别式小于零,说明方程没有实数解,我们用`INFINITY`表示。
求解一元二次方程,任意输入系数a b c,给出方程ax+bx+c=0的解
根据求根公式,一元二次方程的解为:
$x_1=\frac{-b+\sqrt{b^2-4ac}}{2a}$
$x_2=\frac{-b-\sqrt{b^2-4ac}}{2a}$
其中,$b^2-4ac$为判别式,如果判别式小于0,则方程无实数解。
Python代码实现:
```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的值:1
请输入b的值:-3
请输入c的值:2
方程有两个解:x1 = 2.0 x2 = 1.0
```
阅读全文