求方程的根 【if语句】
求方程ax^2+bx+c=0的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。
样例输入
4 1 1
样例输出
x1=-0.125+0.484i x2=-0.125-0.484i
[解决办法]
public void getRoot(double a,double b,double c)
{
double x1,x2;
double temp=b*b-4*a*c;
if(temp>0)
{
double r1=Math.sqrt(temp);
x1=(r1-b)/(2*a);
x2=(-r1-b)/(2*a);
System.out.println("方程 ax^2+bx+c=0 有2个不同实根,分别是:");
System.out.println("x1 = "+x1);
System.out.println("x2 = "+x2);
}
else if(temp==0)
{
x1=x2=(-b)/(2*a);
System.out.println("方程 ax^2+bx+c=0 有2个相同实根,它们是:");
System.out.println("x1 = x2= "+x1);
}
else
{
double r1=Math.sqrt(-temp);
System.out.println("方程 ax^2+bx+c=0 有2个复数根,它们是:");
System.out.println("x1 = "+((-b)/(2*a))+"+"+(r1/(2*a))+"i");
System.out.println("x2 = "+((-b)/(2*a))+"-"+(r1/(2*a))+"i");
}
}