为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Excel在角度进制转换中的应用

2011-04-03 2页 pdf 213KB 35阅读

用户头像

is_327355

暂无简介

举报
Excel在角度进制转换中的应用 中国教育研究论丛(2009) -44- CCHHIINNAA EEDDUUCCAATTIIOONN RREESSEEAARRCCHH AANNAALLEECCTTSS Excel在角度进制转换中的应用 何冬梅 保山学院 在工程测量、野外监测数据的处理工作中,数据量通常十分庞大,依赖传统手工计算或计算器的处理效率较低且容易出 错。MS Office Excel软件依赖其操作的简便性、良好的数据兼容性、以...
Excel在角度进制转换中的应用
中国教育研究论丛(2009) -44- CCHHIINNAA EEDDUUCCAATTIIOONN RREESSEEAARRCCHH AANNAALLEECCTTSS Excel在角度进制转换中的应用 何冬梅 保山学院 在测量、野外监测数据的处理工作中,数据量通常十分庞大,依赖传统手工计算或计算器的处理效率较低且容易出 错。MS Office Excel软件依赖其操作的简便性、良好的数据兼容性、以及强大的计算功能,已被越来越多的人所认同和使用, 为人们的研究工作提供了诸多便利。 角度是工程领域常用的一个量,一般以 60进制的“度分秒”(DMS)表示,但在有些仪器设备和软件中多采用 10进制 “度”角度数据,有的甚至出现 60进制与 10进制混合使用的情况。这给数据的交互处理带来了很多不便。由于 Excel 中没有直接将 60进制“度分秒”(DMS)转换成 10进制“度”的内部函数。为解决这个问题,每个用户都需要用 Excel的 内部函数编写相应的计算公式进行转换,但这些转换公式往往都没有解决一个不易发现,但对计算结果会带来严重后果的问 题,即当角度值中的秒位数为零时,有可能出现转换错误的现象。对于诸如区域控制测量、公路铁路隧洞控制测量等精密工 程而言,这样的错误将造成许多不必要的损失。针对这一问题,笔者将以地理坐标的进制转换为例,探讨有关 Excel中进行 角度进制转换的方法。 一、60进分秒转为十进制度单位(正向转换) 根据角度在 60进制表示法中度、分、秒之间的关系,设角度为 B=DMS,可以得出如下转换公式: A=D+M/60+S/3600 ⋯⋯ 式(1) 式中,A为转换后以 10进制“度”单位表示的角度,D、M、S分别为以 60进制表示的度、分、秒,60表示 1度等于 60分,3600表示 1度等于 3600秒。 根据式(1),可以利用 Excel 中的某些内部函数编写计算公式进行数据转换。一般有以下几种转换方式。在输入 Excel 计算时,需要根据所使用的 Excel函数调整角度的输入形式。 1.利用 INT函数编写公式 在 Excel中,INT为向下取整函数。 角度 B的输入形式为:D.MS(按一般角度写格式,M、S均为两位数,一般情况下秒值为整数) 转换公式为:A=INT(B)+INT((B-INT(B))*100)/60+INT((B-INT(B)-INT((B-INT(B))*100)/100) *10000)/3600 ⋯⋯ 式(2) 2.利用 INT和MOD函数编写公式 MOD函数的作用是返回两数相除后的余数。 角度 B的输入形式为:D.MS 转换公式为:A=INT(B)+INT(MOD(B*100,100))/60+MOD(B*10000,100)/3600 ⋯⋯ 式(3) 上述(2)式运算结果在一般情况下是没有问题的,但当秒值为零时,会出现不同程度的差错,出错原因在文献 3中有 具体说明。但笔者认为该文所述解决办法不是十分理想。 针对上述问题,经分析本文提出下列解决: 在 Excel的单元格中,将角度 B的形式改为:D MS,度与分之间用空格隔开。 这里,需要用到 2个 Excel函数,MID和 FIND。 MID函数:从一个字符串中指定位置起返回指定长度的字符串。 FIND函数:返回一个字符串在另一个字符串中的起始位置。 转换公式为:A=MID(B,1,FIND(" ",B)-1)+MID(B,FIND(" ",B)+1,2)/60+MID(B,FIND(" ",B)+3,2) /3600 ⋯⋯ 式(4) 改用 MID 和 FIND 函数后,公式直接对原始输入数据的特定位置的数值进行提取,减少了原公式中对计算中间值的引 用次数,从而避免了 INT 函数在对计算过程中间值进行向下取整时而出现错误,有效地提高了计算的准确性。另外在此方 法中用空格作为度与分、秒之间的间隔标志比用小数点做间隔标志更直观一些,可以避免在表现形式上将度、分、秒与 10 进制的度相混淆。 值得注意的是,在大比例尺地图的测绘或精密测控中,同一个地理坐标(经纬度)中通常会出现 60进制与 10进制混合 使用的情况。原因是,以地球赤道附近为例,在赤道上 1度经差所对应的纬线弧长约 111321m ,折算成 1秒经差对应的纬 线弧长约为 30.9m。若仅用 60进制的“度分秒”则无法达到精确定位的目的,因此在秒位上采用 10进制带小数点的秒来表 示更高的定位精度。对于这种 60进制与 10进制混用的度分秒单位,即使采用式(4)也不能准确计算。故需引入 LEN函数 (返回字符串长度)对式(4)进行一定修改。 高等教育研究 CCHHIINNAA EEDDUUCCAATTIIOONN RREESSEEAARRCCHH AANNAALLEECCTTSS -45- A=MID(B,1,FIND(" ",B)-1)+MID(B,FIND(" ",B)+1,2)/60+MID(B,FIND(" ",B)+3,LEN(B)-FIND (" ",B)+2)/3600 ⋯⋯ 式(5) 为此,数据输入形式需要重新约定,度与分秒之间用一个空格隔开,度用 3 位数表示,不足 3 位的用 0 补足,分用 2 位数表示,其余的数字为秒值。例如:65°1′20.55″表示为:065 0120.55。 用以上各公式对同一组角度数据进行了转换,结果见表 1。 表 1 正向转换结果 待转换数据 正确转换/度 式 2、3输入 式 2转换 式 3转换 式 5输入 式 5转换 65°2′00″ 65.03333333 65.0200 65.04416667 65.03333333 065 0200 65.03333333 65°7′00″ 65.11666667 65.0700 65.12750000 65.10000000 065 0700 65.11666667 65°9′00″ 65.15000000 65.0900 65.15000000 65.15000000 065 0900 65.15000000 65°10′00″ 65.16666667 65.1000 65.17750000 65.15000000 065 1000 65.16666667 65°34′00″ 65.56666667 65.3400 65.56666667 65.56666667 065 3400 65.56666667 1°45′25.45″ 1.75706944 —— —— —— 001 4525.45 1.75706944 65°1′20.55″ 65.02237500 —— —— —— 065 0120.55 65.02237500 由此可见,式(5)的转换结果明显优于其他公式。 二、将 10进制度单位转换为 60进制度分秒(反向转换) 在 Excel中将 10进制度转为度分秒时需要用到 INT和 ROUND函数(四舍五入)。转换公式如下: B1=INT(A)&"°"&INT((A-INT(A))*60)&"′"&ROUND(((A-INT(A))*60-INT((A-INT(A))*60)) *60,2)&"″" ⋯⋯ 式(6) 式中,B1为转换后的角度,形式为“D°M′S″”,A为输入的 10进制度。 然而,由于 INT 函数在对计算中间值进行向下取整时可能出现的错误,影响了转换结果的显示。例如 10 进制角度 “65.03333333”转换后显示为“65°1′60″”,实际上应该显示为“65°2′00″”或“65°2′”。 为纠正转换后秒位满 60不能进位的情况,在式(6)的基础上进一步做如下修改: B2=IF(ROUND(((A-INT(A))*60-INT((A-INT(A))*60))*60,0)=60,INT(A)&"°"&INT((A―INT(A)) *60)+1&"′",B1) ⋯⋯ 式(7) 利用式(6)、(7)对表 1中的同一组数据进行反向转换,结果见表 2。从表 2中可以看出,此反向转换公式的计算结果 比较直观,且能适应高精度地理坐标转换的需要,同时可以利用 ROUND函数控制秒位的计算精度。 表 2 反向转换结果 待转换数据 正确转换值 式 6转换 式 7转换 65.03333333 65°2′00″ 65°1′60″ 65°2′ 65.11666667 65°7′00″ 65°7′0″ 65°7′0″ 65.15000000 65°9′00″ 65°9′0″ 65°9′0″ 65.16666667 65°10′00″ 65°10′0″ 65°10′0″ 65.56666667 65°34′00″ 65°34′0″ 65°34′0″ 1.75706944 1°45′25.45″ 1°45′25.45″ 1°45′25.45″ 65.02237500 65°1′20.55″ 65°1′20.55″ 65°1′20.55″ 三、讨 论 针对以往利用 Excel进行角度进制转换存在的种种问题,本文提出了新的解决方案。本方案所用公式简洁、直观,直接 避免了由于某些 Excel内部函数自身计算问题所引入的计算错误。与参考文献 3中提出的解决办法相比,本方法具有诸多优 点。如:①无需对原始数据进行数值修改;②转换结果直观明了,不容易混淆;③适应高精度地理坐标(60进制与 10进制 混合使用)转换的需要等。 参考文献 1 陈文华、甘淑.《龙江流域降水、径流时序特征分析》[J].《云南大学学报(自然科学版)》,2007.29(5):485~490 2 邓勤、顾贺军.《利用 Excel管理医疗设备档案》[J].《云南大学学报(自然科学版)》,2000(S2) 3 钭祖民、陈德标.《Excel在角度转换中存在的问题及解决的方法》[J].《丽水学院学报》,2005.27(2):73~75 4 杜茂康.《Excel与数据处理》[M].北京:电子工业出版社,2002 5 蔡孟裔、毛赞猷、田德森等.《新编地图学实习教程》[M].北京:高等教育出版社,2000.6:48
/
本文档为【Excel在角度进制转换中的应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索