每个双重价值是否理性?

时间:2017-09-28 20:05:19

标签: java

每个双数是否为有理数(不包括特殊值[无穷大, - 无穷大,NaN])?我倾向于说是,基于以下逻辑:

  • 尾数的值可以表示为小数,也可以是分子。
  • 指数可以转换为分母,以便根据需要按比例放大和缩小结果。

这个逻辑是否正确,如果没有,它有什么问题,是否存在证明双值可能无理的反例?

2 个答案:

答案 0 :(得分:3)

这个逻辑似乎是正确的。

计算机只能使用有限的空间,这意味着它们只能在内存中表示有理数(当使用double格式时),因为无理数由无数个数字组成而不重复。

考虑到这一点,你可以存储一个函数的可执行代码来定义数字,理性与否,但这不适用于每一个非理性,更重要的是,不是{{1工作。

至于特殊价值观,我不这么认为。无穷大并不是一个真正的数字,所以我发现很难将其定义为理性或非理性。对于NaN也是如此(根据定义,不是数字)。

答案 1 :(得分:1)

你似乎是正确的,双打,至少IEEE 754与基数2是合理的。

使用IEEE 754,你有

s

m是签名,b是尾数,e是基数2,s是指数。

由于mbex是整数,{{1}}必须是合理的。