在表达式a-b = c中,检查范围是否可接受

时间:2017-02-21 07:35:35

标签: javascript math

我必须检查给定范围是否可以为表达式a-b = c生成随机数。

例如 范围是1到9 b范围是1到9和 c范围是10到99

然后在那种情况下我必须返回false。

我的登录信息是

  if (((a.Min - b.Min) <= c.Max) && ((a.Max - b.Min) >= c.Min))
     return true;
  else
     return false;

但是这种情况在少数情况下失败了。

任何人都可以帮助我。

1 个答案:

答案 0 :(得分:0)

我认为正确的条件应该是:

a.Max - b.Min <= c.Max
a.Min - b.Max >= c.Min

用你的例子:a = [101,999],b = [1,9]

你可以得到的最小数字是:a.Min - b.Max = 101 - 9 = 92

最大数量为:999 - 1 = 998

所以你的逻辑在c = [92,998]或任何min> gt;时返回true 92,最大&lt; 998,像[100,500]