嘿那些人正在为学校和项目工作,它要求用户输入小数点坐标并将其转换为结构化格式,即:
17.428333° - > 17°25'42“
有谁可能知道怎么做?该计划也应该能够以相反的方式做到;输入结构化坐标17° 25' 42"
并转换为小数点坐标17.4283333
。
我有用于转换的基本数学。要从结构化坐标转换为十进制坐标,您可以使用以下内容:
17 + 25/60±三千六分之四十二
并且从十进制转换为结构化取第一个值17
作为度数然后计算分钟
17.4285-17 = 0.4285 * 60 = 25.71
除去小数或舍入小数以获得分钟,然后计算秒数
25.71-25 = 0.71 * 60 = 42.6
要么舍入小数,要么除去小数秒。
答案 0 :(得分:3)
假设您从浮点变量x
中的坐标开始。像这样计算度,分和秒:
Degrees := Trunc(x);
x := (x - Degrees)*60;
Minutes := Trunc(x);
x := (x - Minutes)*60
Seconds := Round(x);
相反的方向更简单。你需要的表达是:
Degrees + Minutes/60 + Seconds/3600