【发布时间】:2013-04-09 11:17:15
【问题描述】:
好的,所以我是一个完整的 Java 菜鸟,我正在尝试为使用扫描仪输入运行二次方程的类创建一个程序。到目前为止,我得到的是这样的:
import java.util.*;
public class QuadraticFormulaSCN {
public static void main(String[]args) {
System.out.println("insert value for a:");
Scanner scan1 = new Scanner(System.in);
double a = scan1.nextDouble();
System.out.println("insert value for b:");
Scanner scan2 = new Scanner(System.in);
double b = scan2.nextDouble();
System.out.println("insert value for C:");
Scanner scan3 = new Scanner(System.in);
double c = scan3.nextDouble();
double answer =((Math.sqrt(Math.pow(b,2)-(4*a*c))-b)/2);
double final2 =(-b + Math.sqrt(Math.pow(b,2)-(4*a*c)))/2;
System.out.println("The x values are:" + answer + final2);
}
}
但是我得到了一个奇怪的输出,特别是NaNaN...我该怎么做才能解决这个问题?我做错了什么?
【问题讨论】:
-
你应该只使用一个
Scanner。 -
此外,如果您(至少出于测试目的)避免单行代码并将微积分分隔为多个变量,以便于调试打印,它将对您有所帮助。无论如何,您确定您设置的方程至少有一个解(恕我直言,如果它们确实存在,您应该尝试打印这两个解)。
标签: java input java.util.scanner output quadratic