java检查这两个数字是否等于n个有效数字
我算出了代码的主要部分,但我无法算出如何得到它,因此它只能读取用户输入的小数点后的差值。那么,我如何才能接受用户输入(输入的是第三个数字),并找到前两个数字是否等于小数点。该程序的目标是检查这两个数字是否等于n(用户输入的数字)有效位
样本输入: 5.124 5.125 2
样本输出: 差值=.001,数字等于小数点后2位
import java.util.Scanner;
public class Equal {
public static void main(String[] args) {
Scanner input = new Scanner( System.in );
String diff="diffrence =";
double num1;
double num2;
double num3;
double calc;
while(input.hasNext()){
num1 = Double.parseDouble(input.next());
num2 = Double.parseDouble(input.next());
num3 = Double.parseDouble(input.next());
calc = Math.abs(num1-num2);
System.out.printf("%s %.10f", diff, calc);
}
}
}
# 1 楼答案
下面是一个普通双打的示例和junit测试用例。希望这有帮助
# 2 楼答案
使用
BigDecimal
的好方法:根据您的具体需要,您可能希望使用
RoundingMode
样本输入:
样本输出:
样本输入:
样本输出:
请注意,在以下特殊情况下,行为可能与预期不同:
输入:
输出: