KDB实型的突变行为

KDB实型的突变行为,kdb,Kdb,我在比较float和real时遇到了一个问题。以下是一些例子: KDB版本:2.7(2012-02-20) 4.7e=4.7f 输出:false 原因:Kdb将4.7e转换为4.699998E 所以,4.7e输出:真 4.347e=4.347f 输出:false 原因:4.347e转换为4.3470001e 因此,4.347e>4.347f-->output:true 我不知道这里发生了什么事。你尝试的例子越多,你得到的答案就越多。kdb wiki上也有一些特定的信息(不确定你是否已经看过)

我在比较float和real时遇到了一个问题。以下是一些例子:

KDB版本:2.7(2012-02-20)

  • 4.7e=4.7f
    输出:false

    原因:Kdb将4.7e转换为4.699998E

    所以,4.7e<4.7f--->输出:真

  • 4.347e=4.347f

    输出:false

    原因:4.347e转换为4.3470001e

    因此,4.347e>4.347f-->output:true


  • 我不知道这里发生了什么事。你尝试的例子越多,你得到的答案就越多。

    kdb wiki上也有一些特定的信息(不确定你是否已经看过)


    看看这里关于浮点数和算术的问题和答案。如果有人告诉你阅读戈德堡的论文,每个计算机科学家都应该知道浮点运算,那就忽略他们。谢谢。我经历了这些,它帮助我获得了一些信息。所以基本上浮动值本身存在问题。不,你认为浮动值本身存在问题的结论是错误的。这些问题来自于对计算机算术将与数学算术相匹配的未知期望。我的意思是,只有涉及浮点值的操作才会有问题,并且与我们期望的不一样。