在北纬45纬度圈上有A.B两地,A点经度为东经120度,B点经度为西经150度,设地球半径为R,则AB两点的球面距离为 5

山理特工
2012-11-27
知道答主
回答量:6
采纳率:0%
帮助的人:9346
展开全部
计算地球任意两点之间的球面距离,规定东经为正,西经为负,带入数据即可:

#include <stdio.h>
#include <math.h>
#define PI 3.1415926//定义常量
main()
{
float a1,a2,b1,b2,m,s;
scanf("%f%f%f%f",&a1,&a2,&b1,&b2);//输入纬度和两个经度,规定东经为正,西经为负
m=fabs(a1-b1);
if(m<180)// 经度差小于180
s=6371*2*asin(sqrt(0.5*(1-sin(PI/180*a2)*sin(PI/180*b2)-cos(PI/180*a2)*cos(PI/180*b2)*
cos(PI/180*m))));//推出数学计算公式转换为c语言
else// 经度差大于180
s=6371*2*asin(sqrt(0.5*(1-sin(PI/180*a2)*sin(PI/180*b2)-cos(PI/180*a2)*cos(PI/180*b2)*
cos(PI/180*(360-m)))));//推出数学计算公式转换为c语言
printf("%f\n",s);//输出结果
}
/*资环学院 矿物加工1101 学号1111105006 王浩林*/
/*版本VC++6.0*/
/*错误分析:计算公式推导出现问题*/
/*制作日期:2012年3月5日*/
/*输入数据:60 30 60 60*/
/*输出数据:3335.847656*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
只待此时
2012-11-24 · TA获得超过107个赞
知道答主
回答量:211
采纳率:0%
帮助的人:80.6万
展开全部
最长距离为R/2*270,最短距离为R/2*90
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ylwchy
高粉答主

2012-11-25 · 说的都是干货,快来关注
知道大有可为答主
回答量:3.1万
采纳率:90%
帮助的人:6622万
展开全部
第一种解法:
AB之间的最大经度差为270°,最小经度差为90°。赤道上经度相差1°,地表面的实地距离大约是111千米,在纬度为α的纬线上,经度相差1°,地表面的实地距离大约是111cosα千米。AB两点都在45°N纬线上,AB之间的最长距离为270°×111千米/°×cos45°=29970 cos45° 千米
AB之间的最短距离为90°×111千米/°×cos45°=9990 cos45° 千米
第二种解法:
AB之间的最大经度差为270°,最小经度差为90°。地球平均半径为R,45°N处地球自转的半径为Rcos45°,根据弧长公式可计算处AB之间最长距离为3πRcos45°/2 千米
AB之间的最短距离为πRcos45°/2 千米
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式