Java代码计算⼀元⼆次⽅程
⽼哥们,别⽩嫖,点个赞吧,秋梨膏
1.0版本代码如下:
(该版本的计算并不完善,例如输⼊1,2,1它会提⽰你"该⽅程中的数据进⾏了开平⽅,所以不太准确",这是个意料之外的错误,以后再改,改版本仅供参考) package calculate;
import java.util.Scanner;
class calculate_2 {
public static void main(String[] args) {
System.out.println("请输⼊a,b,c的数值");
Scanner Scanner1 = new Scanner(System.in);
//System.out.println("请输⼊b的数值");
Scanner Scanner2 = new Scanner(System.in);
//System.out.println("请输⼊c的数值");
Scanner Scanner3 = new Scanner(System.in);字符串截取小数点
double a = Double();
double b = Double();
double c = Double();
double A = a;//后⾯判断⽅程是否有解时会⽤到
double B = b;
double C = c;
double i, j, k;
i = b * b / (4 * a * a);
j = c / a;
k = b / (2 * a);
double d = i - j;
d = Math.sqrt(d);
String D = String.format("%.2f", d);//取⼩数点后两位
String panduan = D.substring(1);
//System.out.println("D的值是:"+D);
String ling = ".00";//创建⼀个⽤来判断的字符串
//System.out.println("被截取之后的字符串是:"+panduan);
b = Double.parseDouble(D);
double x, y;
x = b - k;
String X = String.format("%.2f", x);//X为根号下的数据并且将X的值保留⼩数点后两位
y = -b - k;
if (B * B - 4 * A * C < 0) {//该情况下没有接解
System.out.println("你好好输⼊⾏不⾏?该⽅程⽆解");
} else {
if (B * B - 4 * A * C > 0) {//该情况下有两个解
if (panduan != ling) {
}
System.out.println("该⽅程有两个解:");
String Y = String.format("%.2f", y);//将Y的值保留⼩数点后两位
String D1 = X.substring(X.length() - 2, X.length());//截取String类型的后两位
String panduan2 = "00";
if (
D1.equals(panduan2)
) {
String D2 = D.substring(0, D.length() - 3);
//                    D2为最后的X1的值
X = D2;
String DD = Y.substring(D.length() - 2, Y.length());//截取String类型的后两位
if (
DD.equals(panduan2)
) {
String D3 = D.substring(0, D.length() - 3);
Y = D3;//如果正确,D3的值将会传给Y
} else {
Y = Y;
}
} else {
System.out.println("该⽅程有两个解:" + "X1=" + X + ";" + "X2=" + Y);
}
//                System.out.println("x1=" + X + "    ;  " + "x2=" + Y);
} else {//该情况下b*b-4*a*c=0,⽅程只有⼀个解
if (panduan != ling) {
System.out.println("该⽅程中的数据进⾏了开平⽅,所以不太准确");
}
String D1 = X.substring(X.length() - 2, X.length());//截取String类型的后两位
String panduan2 = "00";
if (
D1.equals(panduan2)
) {
String D2 = D.substring(0, D.length() - 3);
System.out.println("只有⼀个解:X1= " + D2);
} else {
System.out.println("只有⼀个解:X1= " + D);                }
}
}
}
}
输出:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。