java 一元二次方程_如何用java编写一元二次方程的求根问题

展开全部

public class SquareEquation {

double a, b, c;

public void setA(double a) {

this.a = a;

}

public void setB(double b) {

this.b = b;

}

public void setC(double c) {

this.c = c;

}

public double getRootOne() {

double disk = calculateValidDisk();

return (-b + Math.sqrt(disk)) / (2 * a);

}

public double getRootTwo() {

double disk = calculateValidDisk();

return (-b - Math.sqrt(disk)) / (2 * a);

}

private double calculateValidDisk() {

if (a == 0) {

throw new EquationException("不是二次方程", EquationException.NONE_EQUATION);

}

double disk = b * b - 4 * a * c;

if (disk < 0) {

throw new EquationException("没有实根", EquationException.NO_REALROOT);

}

return disk;

}

}

b3aaab821f958f04a32777be459fe069.png

扩展资料

比如 方程是 x平方+3x+2=0;

public class Test

{

public static void main(String []args)

{

double a=1;//二次项系数62616964757a686964616fe4b893e5b19e31333366306531

double b=3;//一次项系数

double c=2;//常数项

double s=b*b-4*a*c;

if(s<0)

{

System.out.print("b*b-4ac<0,方程无解!");

return;

}

double ss=Math.sqrt(s);

double x1=(-1*b-ss)/(2*a);

double x2=(-1*b+ss)/(2*a);

System.out.println("x1="+x1);

System.out.println("x2="+x2);

}

}

相关资源:java 一元二次方程
表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页