给定度x,找到度数数组中最接近的度数

jay*_*onp 7 javascript math geometry

我有一个圆度数组,[10,90,200,280,355].

我给了学位,让我们说1.如何确定1最接近355度?

Hen*_*olm 5

两个数相减。如果差异大于 180 [或低于 -180],则减去 [或加] 360。现在您可以比较差异的绝对值。


Shi*_*Shi 0

您有一个值将包含找到的关闭程度found_degree,另一个值将包含实际差异degree_difference

接下来,迭代整个数组并计算两个值:abs(degree_at_position - target_degree)abs(degree_at_position - 360 - target_degree)。如果这些值之一小于degree_difference,则您的度数更接近 - 将其存储found_degreedegree_difference相应更新。

就是这样。

您可能应该found_degree使用 -1 和degree_difference360 进行初始化,只是为了确保在给定空数组的情况下也可以正确解释结果 - 或者您只需单独处理空输入数组的情况。

顺便问一下,这是作业吗?