编程实现:求一元二次方程组ax2+bx+c=0的两个解。(默认b2−4ac>0)
时间: 2024-04-30 16:24:03 浏览: 11
根据求二次方程的公式,x1=(-b+√(b²-4ac))/2a, x2=(-b-√(b²-4ac))/2a,其中a、b、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) {
printf("方程无实数解!\n");
} else {
x1 = (-b + sqrt(delta)) / (2 * a);
x2 = (-b - sqrt(delta)) / (2 * a);
printf("方程的两个解分别为:%.2lf和%.2lf\n", x1, x2);
}
return 0;
}
```
当然,也可以使用函数来实现求解一元二次方程的功能。
相关问题
请编程程序实现对一元二次方程(ax2+bx+c=0)求解。
以下是一个C++程序,用于求解一元二次方程(ax^2+bx+c=0)的根:
```cpp
#include <iostream>
#include <cmath>
int main() {
double a, b, c;
std::cout << "请输入一元二次方程的系数:\n";
std::cout << "a = ";
std::cin >> a;
std::cout << "b = ";
std::cin >> b;
std::cout << "c = ";
std::cin >> c;
double discriminant = b * b - 4 * a * c;
if (discriminant > 0) {
double root1 = (-b + std::sqrt(discriminant)) / (2 * a);
double root2 = (-b - std::sqrt(discriminant)) / (2 * a);
std::cout << "方程的两个实根为:" << root1 << " 和 " << root2 << std::endl;
} else if (discriminant == 0) {
double root = -b / (2 * a);
std::cout << "方程的唯一实根为:" << root << std::endl;
} else {
std::cout << "方程没有实根" << std::endl;
}
return 0;
}
```
C语言编程计算并输出一元二次方程ax^2+bx+c=0的两个实根
当给定一元二次方程的系数 a、b、c 时,可以使用以下公式来计算方程的两个实根:
x1 = (-b + √(b^2 - 4ac)) / (2a)
x2 = (-b - √(b^2 - 4ac)) / (2a)
下面是使用 C 语言编写的示例代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
double a, b, c, discriminant, x1, x2;
printf("请输入一元二次方程的系数:\n");
printf("a = ");
scanf("%lf", &a);
printf("b = ");
scanf("%lf", &b);
printf("c = ");
scanf("%lf", &c);
discriminant = b * b - 4 * a * c;
if (discriminant > 0) {
x1 = (-b + sqrt(discriminant)) / (2 * a);
x2 = (-b - sqrt(discriminant)) / (2 * a);
printf("方程的两个实根为:x1 = %.2lf,x2 = %.2lf\n", x1, x2);
} else if (discriminant == 0) {
x1 = x2 = -b / (2 * a);
printf("方程有两个相等的实根:x1 = x2 = %.2lf\n", x1);
} else {
double realPart = -b / (2 * a);
double imaginaryPart = sqrt(-discriminant) / (2 * a);
printf("方程的两个虚根为:x1 = %.2lf + %.2lfi,x2 = %.2lf - %.2lfi\n", realPart, imaginaryPart, realPart, imaginaryPart);
}
return 0;
}
```
你可以直接运行这段代码,并输入方程的系数 a、b、c,程序将会计算并输出方程的两个实根。