两点距离
时间限制:
3000 ms | 内存限制:
65535 KB
难度:
1
-
描述
-
输入两点坐标(X1,Y1),(X2,Y2)(0<=x1,x2,y1,y2<=1000),计算并输出两点间的距离。
-
输入
-
第一行输入一个整数n(0<n<=1000),表示有n组测试数据;
随后每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。
输出
- 对于每组输入数据,输出一行,结果保留两位小数。 样例输入
-
2 0 0 0 1 0 1 1 0
样例输出
-
1.00 1.41
-
第一行输入一个整数n(0<n<=1000),表示有n组测试数据;
思路:
这道题要看清楚题目输入的是实数。最后输出的答案要保留两位小数。
代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
double[] b = new double[a];//题目中说的是实数。
double[] c = new double[a];
double[] d = new double[a];
double[] e = new double[a];
double[] sum = new double[a];
for(int i=0;i<a;i++){
b[i] = sc.nextDouble();
c[i] = sc.nextDouble();
d[i] = sc.nextDouble();
e[i] = sc.nextDouble();
}
for(int i=0;i<a;i++){//计算两点之间的距离
sum[i] = Math.sqrt(Math.pow(Math.abs(e[i]-c[i]), 2)+Math.pow(Math.abs(d[i]-b[i]), 2));
}
for(int i=0;i<a;i++){//输出
System.out.printf("%.2f\n",sum[i]);
}
}
}