Python 计算两个指南针航向之间的差值
我必须测试罗盘读数和设定点之间的度数差是否在x范围内 描述了我所追求的,它只是用C语言编写的,我无法解释解决方案是如何工作的 例如Python 计算两个指南针航向之间的差值,python,Python,我必须测试罗盘读数和设定点之间的度数差是否在x范围内 描述了我所追求的,它只是用C语言编写的,我无法解释解决方案是如何工作的 例如 Compass Reading Set Point Difference (absolute) 360 1 1 50 60 10 1 360 1 这是转换为python的代码: def getHeadingError(init,
Compass Reading Set Point Difference (absolute)
360 1 1
50 60 10
1 360 1
这是转换为python的代码:
def getHeadingError(init, final):
if init > 360 or init < 0 or final > 360 or final < 0:
raise Exception("out of range")
diff = final - init
absDiff = abs(diff)
if absDiff == 180:
return absDiff
elif absDiff < 180:
return diff
elif final > init:
return absDiff - 360
else:
return 360 - absDiff
print("init -- final -- error")
print("360 -- 1 -- {}".format(getHeadingError(360, 1)))
print("50 -- 60 -- {}".format(getHeadingError(50, 60)))
print("1 -- 360 -- {}".format(getHeadingError(1, 360)))
我希望这能对您有所帮助我鼓励您自己尝试将C解决方案翻译成Python,并在遇到困难时提出具体问题,发布到目前为止的代码。现在的问题是,请为我编码,这通常不适合这个网站。