获取两个坐标点间的距离

 
        private static double EARTH_RADIUS = 6378.137;
	private static double rad(double d)
	{
	   return d * Math.PI / 180.0;
	}

	/**
	 * 获取两个坐标点之间的距离
	 * @param lat1 起点经度
	 * @param lng1 起点维度
	 * @param lat2 终点经度
	 * @param lng2 终点维度
	 * @return
	 */
	public static double getDistance(double lat1, double lng1, double lat2, double lng2)
	{
	   double radLat1 = rad(lat1);
	   double radLat2 = rad(lat2);
	   double a = radLat1 - radLat2;
	   double b = rad(lng1) - rad(lng2);
	   double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) + 
	    Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));
	   s = s * EARTH_RADIUS;
	   s = Math.round(s * 10000) / 10000;
	   return s;
	}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 以下是用Python计算两个坐标之间距离的程序,其中x1, y1, x2, y2分别表示两个点的横纵坐标: ```python import math x1 = float(input("请输入第一个点的横坐标x1:")) y1 = float(input("请输入第一个点的纵坐标y1:")) x2 = float(input("请输入第二个点的横坐标x2:")) y2 = float(input("请输入第二个点的纵坐标y2:")) distance = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2) print("两点之间的距离为:", distance) ``` 以上程序中,首先需要导入数学库`math`,然后通过`float()`函数将用户输入的坐标转换成浮点数,以便进行计算。接下来,通过`math.sqrt()`函数计算两点之间的距离,并将结果输出。 ### 回答2: 可以使用勾股定理来计算两点之间的距离。勾股定理表示:两点之间的直线距离等于两点在坐标轴上的投影距离的平方和的平方根。 下面是一个实现这个功能的Python程序: ```python import math # 输入两个点的坐标 x1 = float(input("请输入第一个点的 x 坐标:")) y1 = float(input("请输入第一个点的 y 坐标:")) x2 = float(input("请输入第二个点的 x 坐标:")) y2 = float(input("请输入第二个点的 y 坐标:")) # 计算两点之间的距离 distance = math.sqrt((x2 - x1)**2 + (y2 - y1)**2) # 输出结果 print("两点之间的距离为:", distance) ``` 这个程序首先使用`input()`函数获取用户输入的两个点的坐标。然后,计算两点之间的距离,使用`math.sqrt()`函数对平方和进行开方运算。最后,通过`print()`函数输出结果。 使用这个程序,用户可以输入任意两个点的坐标,然后程序会输出这两个点之间的距离。 注意:上述程序假设用户输入的是有效的浮点数坐标值。如果输入无效的坐标,程序可能会抛出异常。为了增强程序的健壮性,可以添加输入验证的代码。 ### 回答3: 可以通过以下代码实现计算两点间距离的Python程序: ```python import math # 输入第一个点的坐标 x1 = float(input("请输入第一个点的横坐标:")) y1 = float(input("请输入第一个点的纵坐标:")) # 输入第二个点的坐标 x2 = float(input("请输入第二个点的横坐标:")) y2 = float(input("请输入第二个点的纵坐标:")) # 计算两点间距离 distance = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2) # 输出结果 print("两点间距离为:", distance) ``` 首先,程序会提示用户依次输入第一个点的横坐标、纵坐标,然后输入第二个点的横坐标、纵坐标。 接下来,程序会使用math模块中的sqrt函数计算出两点间距离。具体计算公式为:距离 = sqrt((x2 - x1)² + (y2 - y1)²)。 最后,程序会将计算结果输出到屏幕上,显示出两点间距离

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值