给定一组移动的信号源,你的程序必须计算出在笛卡尔平面内的接收点,然后,给定一个在平面内的目标点,你的程序必须计算出从接收点到目标点指南针的指向,所有的指南针的指向用角度表示,指南针指向0(北)相当于Y轴方向,指南针指向90(东)相当于X轴方向,就像图1所展示的那样。
全球定位系统(GPS)是一个导航系统,根据一些在距地表大约20,000千米的轨道运行的卫星。每个卫星在一个已知的轨道上运行,发射编码着当前时间的无线电信号。如果一个装有全球定位系统的交通工具有一个非常精确的时钟,它就可以比较它自己的当地时间和从卫星上接受到的编码成信号的时间。因为无线电信号按一个已知的速度传播,所以这个交通工具能够计算出它目前的位置和信号发出时卫星的位置之间的距离。通过测算这个交通工具和一些在已知轨道上运行的卫星之间的距离,它可以非常精确地计算出自己的位置。 你必须写一个简单的“自动导航装置”程序,根据GPS的导航。为了让这个问题更简单,我们描述一个二维的问题。换句话说,你不需要考虑地球的曲率或者卫星的高度。此外,这个问题使用了更加适合于飞机和声波的速度而不是卫星和无线电波。 给定一组移动的信号源,你的程序必须计算出在笛卡尔平面内的接收点。然后,给定一个在平面内的目标点,你的程序必须计算出从接收点到目标点指南针的指向。所有的指南针的指向用角度表示。指南针指向0(北)相当于Y轴方向,指南针指向90(东)相当于X轴方向,就像图1所展示的那样。
(图片来源网络,侵删)