怎样才能求出两个数之差的绝对值?(初学者)
也就是说,我的程序将计算|a-b| (按此顺序),而不使用math.abs。
这就是我到目前为止所拥有的:
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double a = in.nextDouble();
double b = in.nextDouble();
double value = a - b;
System.out.println("Enter a: ");
a = in.nextDouble();
System.out.println("Enter b: ");
b = in.nextDouble();
//If value is negative...make it a positive number.
value = (value < 0) ? -value : value;
System.out.println(a + "-" + b + "=" + (a - b));
System.out.println(b + "-" + a + "=" + (b - a));
}
}
请帮帮忙,我是个初学者!
发布于 2018-09-22 10:44:01
更多的格式化代码。
import java.util.Scanner;
class A {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double a;
double b;
System.out.println("Enter a: ");
a = in.nextDouble();
System.out.println("Enter b: ");
b = in.nextDouble();
double value = a - b;
//If value is negative...make it a positive number.
value = (value < 0) ? -value : value;
System.out.println("|"+a + "-" + b +"|" + " =" + value); // value should be printed here instead of (a-b) or (b-a)
System.out.println("|"+b + "-" + a +"|" + " =" + value);
}
}
发布于 2018-09-22 10:41:29
首先,你在没有任何理由的情况下使用了两次扫描仪
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Enter a: ");
double a = in.nextDouble();
System.out.println("Enter b: ");
double b = in.nextDouble();
double value = a - b;
double value2 = b - a;
//If value is negative...make it a positive number.
value = (value < 0) ? -value : value;
value2 = (value2 < 0) ? -value2 : value2;
System.out.println(a + "-" + b + "=" + value); //chaged to value
System.out.println(b + "-" + a + "=" + value2); //changed to value
}
发布于 2018-09-22 10:42:16
若要为您的
value
您可以像下面这样添加if条件
if (value < 0) {
value = value * -1;
}
因此,否定答案(差)将始终转换为正(绝对)值。
如果该值大于0,则不需要,因为它已经是一个正数。
https://stackoverflow.com/questions/52452999
复制相似问题