用java写一个程序计算任何一元二次方程

如题所述

package cn.edu.ynu.demo;

public class Demo{

private double a,b,c,d;
private double x ,x2;

public double getA() {
return a;
}
public void setA(double a) {
this.a = a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b = b;
}
public double getC() {
return c;
}
public void setC(double c) {
this.c = c;
}
public double getD() {
return d;
}
public void setD(double d) {
this.d = d;
}
public double getX() {
return x;
}
public void setX(double x) {
this.x = x;
}
public double getX2() {
return x2;
}
public void setX2(double x2) {
this.x2 = x2;
}
/**
* @param args
*/
public static void main(String[] args) {
/*
* a x*x + bx + c = d
* */
Demo de = new Demo(1,2,2,6);
de.execute();
System.out.println(de.getX()+":"+de.getX2());
}
public Demo(double a, double b, double c,double d) {
this.a = a;
this.b = b;
this.c = c;
this.d = d;
}
public void execute() {
if ((b*b-4*a*(c-d))==0) {
x = x2 = (-b + Math.sqrt(((b*b)-4*a*(c-d))))/(2*a);
//System.out.println(x+":"+x2);
}else if((b*b-4*a*(c-d))>0){
x = (-b + Math.sqrt(((b*b)-4*a*(c-d))))/(2*a);
x2 = (-b - Math.sqrt(((b*b)-4*a*(c-d))))/(2*a);
//System.out.println(x+":"+x2);
} else {
System.out.println("无实数根");
}
}
}
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答