高斯-克吕格投影带相关计算C语言实现

问题引入

来源于测绘专业课本《地图学》讲的高斯克吕格投影。

e4ce1ad7576d48bb8332872e93bd5b0d.jpg

相关计算公式

由于我国的经度范围大约为73°33'E至135°05'E,横跨了东经73°至135°之间,整体位于东半球,所以以下算得的经度单位都为东经。

f3c2fd2b874c48f1a6e453f5b62a73de.jpg 

 

代码实现

纯算罢了

#include <stdio.h>

int main(){
	printf("***************************************欢迎使用高斯克吕格投影分带相关计算程序!***************************************\n\n\n");
	printf("参考:我国的经度范围大约为73°33'E至135°05'E\n"); 
	double longitude;
	printf("请输入经度(保留两位小数,注意是十进制,重点看小数点后一位是否大于5):");
	scanf("%lf",&longitude);
	int selection;
	printf("请选择是计算6°代号还是3°代号:\n(1).3度带\n(2).6度带\n"); 
	scanf("%d",&selection);
	int n;
	switch(selection){
		case 1:
			n = (longitude + 1.5)/3;
			printf("经度为%.2f°E的3度带代号为:%d,此投影带的中央经线经度为:%d°E",longitude,n,3*n);
			break;
		case 2:
			n = (longitude + 6)/6;
			printf("经度为%.2f°E的6度带代号为:%d,此投影带的中央经线经度为:%d°E",longitude,n,6*n-3);
			break;
		default:
			printf("选择错误,程序退出"); 
	}
	return 0;
} 

运行结果

三度带

bf4287047f014f1493dc4ae5b41119b3.png

六度带2228282d9c384ed9ab7813b24008f163.png

 

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值