我正在使用二次公式制作方程式解析器,因此我使用扫描仪传递所有数据
接下来我想做的是:
到目前为止,这是我的代码但不起作用(只接受数字而没有空格)
if (y.matches("[a-zA-Z]" ) || x.trim().length() == 0) {
System.out.println("You only can add numbers, no spaces and no special characters");
System.exit(1);
}
之后我将它们转换为double(a,b,c,)和此
double x1 = (-b + Math.sqrt(Math.pow(b, 2) - (4 * a * c))) / (2 * a)
输出:NaN
任何帮助或提示? 谢谢
如果您需要完整代码我将更新帖子
更新
如果我删除“-b”它会给出一个数字结果,但我使用sout来打印b并且它给出一个数字,可能是“ - ”导致问题
固定的。