题目描述
在平面直角坐标系中求两点的距离。
输入
输入有若干行,每行四个数,分别代表两个坐标点(a,b)和(c,d),当每行四个数为0时,结束输入,本用例不用计算。
输出
对应输出这两点之间的距离。结果保留两位小数。请注意行尾输出换行。
样例输入
0 0 4 3
1.1 -2.3 0 1
0 0 0 0
样例输出
5.00
3.48
思路:这里我将输入设置成方法,尝试一种新的解决方案供各位参考,此时许多东西都需要适当的变更,具体代码
import java.util.Scanner;
public class Main {
private static double a, b, c, d;
//这种方法Scanner也要放外面并设置成static
static Scanner sc = new Scanner(System.in);
public static void main(String[] args) {
while ( sin() ) {
double s = Math.sqrt((a-c)*(a-c) + (b-d)*(b-d));
System.out.printf("%.2f%n", s);
}
}
private static boolean sin() {
a = sc.nextDouble();
b = sc.nextDouble();
c = sc.nextDouble();
d = sc.nextDouble();
return a != 0 || b != 0 || c != 0 || d != 0;
}
}