代码之家  ›  专栏  ›  技术社区  ›  unkulunkulu

什么时候(B-A)+A!=B正好在浮点

  •  1
  • unkulunkulu  · 技术社区  · 6 年前

    我在一行上编写了一些带有段的代码,并努力从输入中节省最大的精度。我是否必须保留段两端的坐标,或者起点和长度是否足够?我必须有长度,如果我想保持我目前良好的建筑,因此愿望省略了右端。

    或正式如问题所述:

    假设我有 0 <= a <= b 什么时候的情况 (b - a) + a 不会完全屈服 b ?

    1 回复  |  直到 6 年前
        1
  •  1
  •   gammatester    6 年前

    为了扩展我的评论,我对小分数进行了测试,直到达到极限N,也就是说。 a_i = i/n, i=1..n b_j = j/n, j=i+1..n . 大概4个……5%的测试用例相等失败。以下是一些数字:

       n   failed    tested     f/t
      10        2        55    0.036
      50       48      1275    0.038
     100      204      5050    0.040
     127      383      8128    0.047
    2047   114752   2096128    0.055
    

    n=10的失败案例为 a=2/10, b=9/10 a=3/10, b=9/10 .