回复 2楼 保保
sqrt(fabs(delta))/(2*a)sqrt是开方的意思,delta是数据,那fabs是什么意思啊
求一元二次方程ax2+bx+c=0的根,其中系数a, b, c为实数,由键盘输入。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double a, b, c, delta, p, q;
cout << "Please intput a, b, c = ";
cin >> a >> b >> c;
delta = b*b-4*a*c;
p = -b/(2*a);
q = sqrt(fabs(delta))/(2*a);
if
(delta >= 0)
cout << "x1 = "<<p+q<< endl<< "x2 = " << p-q << endl;
else
{
cout << "x1 = " << p << " + j" << q;
cout<< endl << "x2 = " << p << " - j" << q <<endl;
}
return 0;
}
在上面的程序中,if判断的两种情况有什么区别吗??不都是一个值是p+q,一个值是p-q吗